Merge remote-tracking branch 'upstream/master' into staging
This commit is contained in:
commit
e9d3acbaf1
|
@ -1,4 +1,6 @@
|
|||
matrix:
|
||||
allow_failures:
|
||||
- os: osx
|
||||
include:
|
||||
- os: linux
|
||||
language: generic
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
abaldeau = "Andreas Baldeau <andreas@baldeau.net>";
|
||||
abbradar = "Nikolay Amiantov <ab@fmap.me>";
|
||||
aboseley = "Adam Boseley <adam.boseley@gmail.com>";
|
||||
abuibrahim = "Ruslan Babayev <ruslan@babayev.com>";
|
||||
adev = "Adrien Devresse <adev@adev.name>";
|
||||
Adjective-Object = "Maxwell Huang-Hobbs <mhuan13@gmail.com>";
|
||||
adnelson = "Allen Nelson <ithinkican@gmail.com>";
|
||||
|
|
|
@ -4,6 +4,11 @@ let lib = import ./default.nix; in
|
|||
|
||||
rec {
|
||||
|
||||
# Returns the type of a path: regular (for file), symlink, or directory
|
||||
pathType = p: with builtins; getAttr (baseNameOf p) (readDir (dirOf p));
|
||||
|
||||
# Returns true if the path exists and is a directory, false otherwise
|
||||
pathIsDirectory = p: if builtins.pathExists p then (pathType p) == "directory" else false;
|
||||
|
||||
# Bring in a path as a source, filtering out all Subversion and CVS
|
||||
# directories, as well as backup files (*~).
|
||||
|
@ -29,6 +34,7 @@ rec {
|
|||
in type == "directory" || lib.any (ext: lib.hasSuffix ext base) exts;
|
||||
in builtins.filterSource filter path;
|
||||
|
||||
|
||||
# Get the commit id of a git repo
|
||||
# Example: commitIdFromGitRepo <nixpkgs/.git>
|
||||
commitIdFromGitRepo =
|
||||
|
|
|
@ -19,7 +19,7 @@ if [[ $1 == nix ]]; then
|
|||
elif [[ $1 == nox ]]; then
|
||||
source $HOME/.nix-profile/etc/profile.d/nix.sh
|
||||
echo "=== Installing nox..."
|
||||
nix-build -A nox '<nixpkgs>'
|
||||
nix-build -A nox '<nixpkgs>' --show-trace
|
||||
elif [[ $1 == build ]]; then
|
||||
source $HOME/.nix-profile/etc/profile.d/nix.sh
|
||||
|
||||
|
@ -27,10 +27,10 @@ elif [[ $1 == build ]]; then
|
|||
echo "Skipping NixOS things on darwin"
|
||||
else
|
||||
echo "=== Checking NixOS options"
|
||||
nix-build nixos/release.nix -A options
|
||||
nix-build nixos/release.nix -A options --show-trace
|
||||
|
||||
echo "=== Checking tarball creation"
|
||||
nix-build pkgs/top-level/release.nix -A tarball
|
||||
nix-build pkgs/top-level/release.nix -A tarball --show-trace
|
||||
fi
|
||||
|
||||
if [[ $TRAVIS_PULL_REQUEST == false ]]; then
|
||||
|
|
|
@ -21,7 +21,7 @@ Alternatively, you can use a systemd unit that does the same in the
|
|||
background:
|
||||
|
||||
<screen>
|
||||
$ systemctl start nix-gc.service
|
||||
# systemctl start nix-gc.service
|
||||
</screen>
|
||||
|
||||
You can tell NixOS in <filename>configuration.nix</filename> to run
|
||||
|
@ -59,4 +59,4 @@ $ nix-store --optimise
|
|||
Since this command needs to read the entire Nix store, it can take
|
||||
quite a while to finish.</para>
|
||||
|
||||
</chapter>
|
||||
</chapter>
|
||||
|
|
|
@ -13,7 +13,7 @@ create</literal>, it gets it own private IPv4 address in the range
|
|||
address as follows:
|
||||
|
||||
<screen>
|
||||
$ nixos-container show-ip foo
|
||||
# nixos-container show-ip foo
|
||||
10.233.4.2
|
||||
|
||||
$ ping -c1 10.233.4.2
|
||||
|
@ -47,4 +47,4 @@ where <literal>eth0</literal> should be replaced with the desired
|
|||
external interface. Note that <literal>ve-+</literal> is a wildcard
|
||||
that matches all container interfaces.</para>
|
||||
|
||||
</section>
|
||||
</section>
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
identifier <literal>foo</literal> as follows:
|
||||
|
||||
<screen>
|
||||
$ nixos-container create foo
|
||||
# nixos-container create foo
|
||||
</screen>
|
||||
|
||||
This creates the container’s root directory in
|
||||
|
@ -25,7 +25,7 @@ line. For instance, to create a container that has
|
|||
<literal>root</literal>:
|
||||
|
||||
<screen>
|
||||
$ nixos-container create foo --config 'services.openssh.enable = true; \
|
||||
# nixos-container create foo --config 'services.openssh.enable = true; \
|
||||
users.extraUsers.root.openssh.authorizedKeys.keys = ["ssh-dss AAAAB3N…"];'
|
||||
</screen>
|
||||
|
||||
|
@ -35,7 +35,7 @@ $ nixos-container create foo --config 'services.openssh.enable = true; \
|
|||
run:
|
||||
|
||||
<screen>
|
||||
$ nixos-container start foo
|
||||
# nixos-container start foo
|
||||
</screen>
|
||||
|
||||
This command will return as soon as the container has booted and has
|
||||
|
@ -46,7 +46,7 @@ Thus, if something went wrong, you can get status info using
|
|||
<command>systemctl</command>:
|
||||
|
||||
<screen>
|
||||
$ systemctl status container@foo
|
||||
# systemctl status container@foo
|
||||
</screen>
|
||||
|
||||
</para>
|
||||
|
@ -55,7 +55,7 @@ $ systemctl status container@foo
|
|||
root using the <command>root-login</command> operation:
|
||||
|
||||
<screen>
|
||||
$ nixos-container root-login foo
|
||||
# nixos-container root-login foo
|
||||
[root@foo:~]#
|
||||
</screen>
|
||||
|
||||
|
@ -65,7 +65,7 @@ authentication). You can also get a regular login prompt using the
|
|||
the host:
|
||||
|
||||
<screen>
|
||||
$ nixos-container login foo
|
||||
# nixos-container login foo
|
||||
foo login: alice
|
||||
Password: ***
|
||||
</screen>
|
||||
|
@ -74,7 +74,7 @@ With <command>nixos-container run</command>, you can execute arbitrary
|
|||
commands in the container:
|
||||
|
||||
<screen>
|
||||
$ nixos-container run foo -- uname -a
|
||||
# nixos-container run foo -- uname -a
|
||||
Linux foo 3.4.82 #1-NixOS SMP Thu Mar 20 14:44:05 UTC 2014 x86_64 GNU/Linux
|
||||
</screen>
|
||||
|
||||
|
@ -86,17 +86,17 @@ container. First, on the host, you can edit
|
|||
and run
|
||||
|
||||
<screen>
|
||||
$ nixos-container update foo
|
||||
# nixos-container update foo
|
||||
</screen>
|
||||
|
||||
This will build and activate the new configuration. You can also
|
||||
specify a new configuration on the command line:
|
||||
|
||||
<screen>
|
||||
$ nixos-container update foo --config 'services.httpd.enable = true; \
|
||||
# nixos-container update foo --config 'services.httpd.enable = true; \
|
||||
services.httpd.adminAddr = "foo@example.org";'
|
||||
|
||||
$ curl http://$(nixos-container show-ip foo)/
|
||||
# curl http://$(nixos-container show-ip foo)/
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">…
|
||||
</screen>
|
||||
|
||||
|
@ -116,9 +116,9 @@ start</literal>, respectively, or by using
|
|||
destroy a container, including its file system, do
|
||||
|
||||
<screen>
|
||||
$ nixos-container destroy foo
|
||||
# nixos-container destroy foo
|
||||
</screen>
|
||||
|
||||
</para>
|
||||
|
||||
</section>
|
||||
</section>
|
||||
|
|
|
@ -9,10 +9,10 @@
|
|||
<para>You can enter rescue mode by running:
|
||||
|
||||
<screen>
|
||||
$ systemctl rescue</screen>
|
||||
# systemctl rescue</screen>
|
||||
|
||||
This will eventually give you a single-user root shell. Systemd will
|
||||
stop (almost) all system services. To get out of maintenance mode,
|
||||
just exit from the rescue shell.</para>
|
||||
|
||||
</section>
|
||||
</section>
|
||||
|
|
|
@ -18,14 +18,14 @@ You can disable the use of the binary cache by adding <option>--option
|
|||
use-binary-caches false</option>, e.g.
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild switch --option use-binary-caches false
|
||||
# nixos-rebuild switch --option use-binary-caches false
|
||||
</screen>
|
||||
|
||||
If you have an alternative binary cache at your disposal, you can use
|
||||
it instead:
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild switch --option binary-caches http://my-cache.example.org/
|
||||
# nixos-rebuild switch --option binary-caches http://my-cache.example.org/
|
||||
</screen>
|
||||
|
||||
</para>
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
doing:
|
||||
|
||||
<screen>
|
||||
$ shutdown
|
||||
# shutdown
|
||||
</screen>
|
||||
|
||||
This is equivalent to running <command>systemctl
|
||||
|
@ -19,7 +19,7 @@ poweroff</command>.</para>
|
|||
<para>To reboot the system, run
|
||||
|
||||
<screen>
|
||||
$ reboot
|
||||
# reboot
|
||||
</screen>
|
||||
|
||||
which is equivalent to <command>systemctl reboot</command>.
|
||||
|
@ -28,7 +28,7 @@ Alternatively, you can quickly reboot the system using
|
|||
the new kernel into memory:
|
||||
|
||||
<screen>
|
||||
$ systemctl kexec
|
||||
# systemctl kexec
|
||||
</screen>
|
||||
|
||||
</para>
|
||||
|
@ -41,4 +41,4 @@ $ systemctl kexec
|
|||
i.e. on a virtual console or in X11; otherwise, the user is asked for
|
||||
authentication.</para>
|
||||
|
||||
</chapter>
|
||||
</chapter>
|
||||
|
|
|
@ -19,7 +19,7 @@ fails to boot. After the system has booted, you can make the selected
|
|||
configuration the default for subsequent boots:
|
||||
|
||||
<screen>
|
||||
$ /run/current-system/bin/switch-to-configuration boot</screen>
|
||||
# /run/current-system/bin/switch-to-configuration boot</screen>
|
||||
|
||||
</para>
|
||||
|
||||
|
@ -27,12 +27,12 @@ $ /run/current-system/bin/switch-to-configuration boot</screen>
|
|||
system:
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild switch --rollback</screen>
|
||||
# nixos-rebuild switch --rollback</screen>
|
||||
|
||||
This is equivalent to running:
|
||||
|
||||
<screen>
|
||||
$ /nix/var/nix/profiles/system-<replaceable>N</replaceable>-link/bin/switch-to-configuration switch</screen>
|
||||
# /nix/var/nix/profiles/system-<replaceable>N</replaceable>-link/bin/switch-to-configuration switch</screen>
|
||||
|
||||
where <replaceable>N</replaceable> is the number of the NixOS system
|
||||
configuration. To get a list of the available configurations, do:
|
||||
|
@ -45,4 +45,4 @@ lrwxrwxrwx 1 root root 78 Aug 12 13:54 /nix/var/nix/profiles/system-268-link ->
|
|||
|
||||
</para>
|
||||
|
||||
</section>
|
||||
</section>
|
||||
|
|
|
@ -66,9 +66,9 @@ messages from the service.
|
|||
<para>Units can be stopped, started or restarted:
|
||||
|
||||
<screen>
|
||||
$ systemctl stop postgresql.service
|
||||
$ systemctl start postgresql.service
|
||||
$ systemctl restart postgresql.service
|
||||
# systemctl stop postgresql.service
|
||||
# systemctl start postgresql.service
|
||||
# systemctl restart postgresql.service
|
||||
</screen>
|
||||
|
||||
These operations are synchronous: they wait until the service has
|
||||
|
|
|
@ -18,7 +18,7 @@ you may be able to fix it automatically.</para>
|
|||
system configuration, you can fix it by doing
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild switch --repair
|
||||
# nixos-rebuild switch --repair
|
||||
</screen>
|
||||
|
||||
This will cause Nix to check every path in the closure, and if its
|
||||
|
@ -28,10 +28,10 @@ the path is rebuilt or redownloaded.</para>
|
|||
<para>You can also scan the entire Nix store for corrupt paths:
|
||||
|
||||
<screen>
|
||||
$ nix-store --verify --check-contents --repair
|
||||
# nix-store --verify --check-contents --repair
|
||||
</screen>
|
||||
|
||||
Any corrupt paths will be redownloaded if they’re available in a
|
||||
binary cache; otherwise, they cannot be repaired.</para>
|
||||
|
||||
</section>
|
||||
</section>
|
||||
|
|
|
@ -45,9 +45,9 @@ track of this, you can terminate a session in a way that ensures that
|
|||
all the session’s processes are gone:
|
||||
|
||||
<screen>
|
||||
$ loginctl terminate-session c3
|
||||
# loginctl terminate-session c3
|
||||
</screen>
|
||||
|
||||
</para>
|
||||
|
||||
</chapter>
|
||||
</chapter>
|
||||
|
|
|
@ -31,7 +31,7 @@ and you run <command>nixos-rebuild</command>, specifying your own
|
|||
Nixpkgs tree:
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild switch -I nixpkgs=/path/to/my/nixpkgs</screen>
|
||||
# nixos-rebuild switch -I nixpkgs=/path/to/my/nixpkgs</screen>
|
||||
|
||||
</para>
|
||||
|
||||
|
|
|
@ -82,7 +82,7 @@ $ nix-shell '<nixpkgs>' -A linuxPackages.kernel
|
|||
$ unpackPhase
|
||||
$ cd linux-*
|
||||
$ make -C $dev/lib/modules/*/build M=$(pwd)/drivers/net/ethernet/mellanox modules
|
||||
$ sudo insmod ./drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko
|
||||
# insmod ./drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko
|
||||
]]></screen>
|
||||
|
||||
</section>
|
||||
|
|
|
@ -12,7 +12,7 @@ here is how you create an encrypted Ext4 file system on the device
|
|||
<filename>/dev/disk/by-uuid/3f6b0024-3a44-4fde-a43a-767b872abe5d</filename>:
|
||||
|
||||
<screen>
|
||||
$ cryptsetup luksFormat /dev/disk/by-uuid/3f6b0024-3a44-4fde-a43a-767b872abe5d
|
||||
# cryptsetup luksFormat /dev/disk/by-uuid/3f6b0024-3a44-4fde-a43a-767b872abe5d
|
||||
|
||||
WARNING!
|
||||
========
|
||||
|
@ -22,10 +22,10 @@ Are you sure? (Type uppercase yes): YES
|
|||
Enter LUKS passphrase: ***
|
||||
Verify passphrase: ***
|
||||
|
||||
$ cryptsetup luksOpen /dev/disk/by-uuid/3f6b0024-3a44-4fde-a43a-767b872abe5d crypted
|
||||
# cryptsetup luksOpen /dev/disk/by-uuid/3f6b0024-3a44-4fde-a43a-767b872abe5d crypted
|
||||
Enter passphrase for /dev/disk/by-uuid/3f6b0024-3a44-4fde-a43a-767b872abe5d: ***
|
||||
|
||||
$ mkfs.ext4 /dev/mapper/crypted
|
||||
# mkfs.ext4 /dev/mapper/crypted
|
||||
</screen>
|
||||
|
||||
To ensure that this file system is automatically mounted at boot time
|
||||
|
|
|
@ -63,14 +63,14 @@ commands such as <command>useradd</command>,
|
|||
account named <literal>alice</literal>:
|
||||
|
||||
<screen>
|
||||
$ useradd -m alice</screen>
|
||||
# useradd -m alice</screen>
|
||||
|
||||
To make all nix tools available to this new user use `su - USER` which
|
||||
opens a login shell (==shell that loads the profile) for given user.
|
||||
This will create the ~/.nix-defexpr symlink. So run:
|
||||
|
||||
<screen>
|
||||
$ su - alice -c "true"</screen>
|
||||
# su - alice -c "true"</screen>
|
||||
|
||||
|
||||
The flag <option>-m</option> causes the creation of a home directory
|
||||
|
@ -79,7 +79,7 @@ have an initial password and therefore cannot log in. A password can
|
|||
be set using the <command>passwd</command> utility:
|
||||
|
||||
<screen>
|
||||
$ passwd alice
|
||||
# passwd alice
|
||||
Enter new UNIX password: ***
|
||||
Retype new UNIX password: ***
|
||||
</screen>
|
||||
|
@ -87,7 +87,7 @@ Retype new UNIX password: ***
|
|||
A user can be deleted using <command>userdel</command>:
|
||||
|
||||
<screen>
|
||||
$ userdel -r alice</screen>
|
||||
# userdel -r alice</screen>
|
||||
|
||||
The flag <option>-r</option> deletes the user’s home directory.
|
||||
Accounts can be modified using <command>usermod</command>. Unix
|
||||
|
|
|
@ -41,13 +41,13 @@ If you are using WPA2 the <command>wpa_passphrase</command> tool might be useful
|
|||
to generate the <literal>wpa_supplicant.conf</literal>.
|
||||
|
||||
<screen>
|
||||
$ wpa_passphrase ESSID PSK > /etc/wpa_supplicant.conf</screen>
|
||||
# wpa_passphrase ESSID PSK > /etc/wpa_supplicant.conf</screen>
|
||||
|
||||
After you have edited the <literal>wpa_supplicant.conf</literal>,
|
||||
you need to restart the wpa_supplicant service.
|
||||
|
||||
<screen>
|
||||
$ systemctl restart wpa_supplicant.service</screen>
|
||||
# systemctl restart wpa_supplicant.service</screen>
|
||||
</para>
|
||||
|
||||
</section>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
xml:id="sec-x11">
|
||||
|
||||
<title>X Window System</title>
|
||||
|
||||
|
||||
<para>The X Window System (X11) provides the basis of NixOS’ graphical
|
||||
user interface. It can be enabled as follows:
|
||||
<programlisting>
|
||||
|
@ -48,7 +48,7 @@ services.xserver.autorun = false;
|
|||
</programlisting>
|
||||
The X server can then be started manually:
|
||||
<screen>
|
||||
$ systemctl start display-manager.service
|
||||
# systemctl start display-manager.service
|
||||
</screen>
|
||||
</para>
|
||||
|
||||
|
@ -115,5 +115,14 @@ services.xserver.synaptics.twoFingerScroll = true;
|
|||
|
||||
</simplesect>
|
||||
|
||||
<simplesect><title>GTK/Qt themes</title>
|
||||
|
||||
<para>GTK themes can be installed either to user profile or system-wide (via
|
||||
<literal>system.environmentPackages</literal>). To make Qt 5 applications look similar
|
||||
to GTK2 ones, you can install <literal>qt5.qtbase.gtk</literal> package into your
|
||||
system environment. It should work for all Qt 5 library versions.
|
||||
</para>
|
||||
|
||||
</simplesect>
|
||||
|
||||
</chapter>
|
||||
|
|
|
@ -25,8 +25,8 @@ $ nix-build -A config.system.build.isoImage -I nixos-config=modules/installer/cd
|
|||
suggested by the following command:
|
||||
|
||||
<screen>
|
||||
$ mount -o loop -t iso9660 ./result/iso/cd.iso /mnt/iso</screen>
|
||||
# mount -o loop -t iso9660 ./result/iso/cd.iso /mnt/iso</screen>
|
||||
|
||||
</para>
|
||||
|
||||
</chapter>
|
||||
</chapter>
|
||||
|
|
|
@ -94,8 +94,8 @@ $ nix-build -A 'config.systemd.units."httpd.service".unit'
|
|||
<screen>
|
||||
$ cp $(nix-build -A 'config.systemd.units."httpd.service".unit')/httpd.service \
|
||||
/run/systemd/system/tmp-httpd.service
|
||||
$ systemctl daemon-reload
|
||||
$ systemctl start tmp-httpd.service
|
||||
# systemctl daemon-reload
|
||||
# systemctl start tmp-httpd.service
|
||||
</screen>
|
||||
|
||||
Note that the unit must not have the same name as any unit in
|
||||
|
@ -110,4 +110,4 @@ $ systemctl start tmp-httpd.service
|
|||
|
||||
</para>
|
||||
|
||||
</chapter>
|
||||
</chapter>
|
||||
|
|
|
@ -70,7 +70,7 @@ sources, you need to tell <command>nixos-rebuild</command> about them
|
|||
using the <option>-I</option> flag:
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild switch -I nixpkgs=<replaceable>/my/sources</replaceable>/nixpkgs
|
||||
# nixos-rebuild switch -I nixpkgs=<replaceable>/my/sources</replaceable>/nixpkgs
|
||||
</screen>
|
||||
|
||||
</para>
|
||||
|
|
|
@ -12,16 +12,16 @@ properly:
|
|||
|
||||
<screen>
|
||||
$ nix-build -A config.system.build.nixos-install
|
||||
$ mount -t tmpfs none /mnt
|
||||
$ ./result/bin/nixos-install</screen>
|
||||
# mount -t tmpfs none /mnt
|
||||
# ./result/bin/nixos-install</screen>
|
||||
|
||||
To start a login shell in the new NixOS installation in
|
||||
<filename>/mnt</filename>:
|
||||
|
||||
<screen>
|
||||
$ ./result/bin/nixos-install --chroot
|
||||
# ./result/bin/nixos-install --chroot
|
||||
</screen>
|
||||
|
||||
</para>
|
||||
|
||||
</chapter>
|
||||
</chapter>
|
||||
|
|
|
@ -10,7 +10,7 @@ contains the current configuration of your machine. Whenever you’ve
|
|||
changed something to that file, you should do
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild switch</screen>
|
||||
# nixos-rebuild switch</screen>
|
||||
|
||||
to build the new configuration, make it the default configuration for
|
||||
booting, and try to realise the configuration in the running system
|
||||
|
@ -23,7 +23,7 @@ either run them from a root shell or by prefixing them with
|
|||
<para>You can also do
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild test</screen>
|
||||
# nixos-rebuild test</screen>
|
||||
|
||||
to build the configuration and switch the running system to it, but
|
||||
without making it the boot default. So if (say) the configuration
|
||||
|
@ -33,7 +33,7 @@ configuration.</para>
|
|||
<para>There is also
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild boot</screen>
|
||||
# nixos-rebuild boot</screen>
|
||||
|
||||
to build the configuration and make it the boot default, but not
|
||||
switch to it now (so it will only take effect after the next
|
||||
|
@ -44,7 +44,7 @@ of the GRUB 2 boot screen by giving it a different <emphasis>profile
|
|||
name</emphasis>, e.g.
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild switch -p test </screen>
|
||||
# nixos-rebuild switch -p test </screen>
|
||||
|
||||
which causes the new configuration (and previous ones created using
|
||||
<literal>-p test</literal>) to show up in the GRUB submenu “NixOS -
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
xml:id="sec-uefi-installation">
|
||||
|
||||
<title>UEFI Installation</title>
|
||||
|
||||
|
||||
<para>NixOS can also be installed on UEFI systems. The procedure
|
||||
is by and large the same as a BIOS installation, with the following
|
||||
changes:
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
changes. For example:
|
||||
|
||||
<screen>
|
||||
$ mkfs.ext4 -L nixos /dev/sda1</screen>
|
||||
# mkfs.ext4 -L nixos /dev/sda1</screen>
|
||||
|
||||
</para></listitem>
|
||||
|
||||
|
@ -66,10 +66,10 @@ $ mkfs.ext4 -L nixos /dev/sda1</screen>
|
|||
<listitem><para>For creating LVM volumes, the LVM commands, e.g.,
|
||||
|
||||
<screen>
|
||||
$ pvcreate /dev/sda1 /dev/sdb1
|
||||
$ vgcreate MyVolGroup /dev/sda1 /dev/sdb1
|
||||
$ lvcreate --size 2G --name bigdisk MyVolGroup
|
||||
$ lvcreate --size 1G --name smalldisk MyVolGroup</screen>
|
||||
# pvcreate /dev/sda1 /dev/sdb1
|
||||
# vgcreate MyVolGroup /dev/sda1 /dev/sdb1
|
||||
# lvcreate --size 2G --name bigdisk MyVolGroup
|
||||
# lvcreate --size 1G --name smalldisk MyVolGroup</screen>
|
||||
|
||||
</para></listitem>
|
||||
|
||||
|
@ -84,7 +84,7 @@ $ lvcreate --size 1G --name smalldisk MyVolGroup</screen>
|
|||
be installed on <filename>/mnt</filename>, e.g.
|
||||
|
||||
<screen>
|
||||
$ mount /dev/disk/by-label/nixos /mnt
|
||||
# mount /dev/disk/by-label/nixos /mnt
|
||||
</screen>
|
||||
|
||||
</para></listitem>
|
||||
|
@ -113,14 +113,14 @@ $ mount /dev/disk/by-label/nixos /mnt
|
|||
generate an initial configuration file for you:
|
||||
|
||||
<screen>
|
||||
$ nixos-generate-config --root /mnt</screen>
|
||||
# nixos-generate-config --root /mnt</screen>
|
||||
|
||||
You should then edit
|
||||
<filename>/mnt/etc/nixos/configuration.nix</filename> to suit your
|
||||
needs:
|
||||
|
||||
<screen>
|
||||
$ nano /mnt/etc/nixos/configuration.nix
|
||||
# nano /mnt/etc/nixos/configuration.nix
|
||||
</screen>
|
||||
|
||||
If you’re using the graphical ISO image, other editors may be
|
||||
|
@ -162,7 +162,7 @@ $ nano /mnt/etc/nixos/configuration.nix
|
|||
<listitem><para>Do the installation:
|
||||
|
||||
<screen>
|
||||
$ nixos-install</screen>
|
||||
# nixos-install</screen>
|
||||
|
||||
Cross fingers. If this fails due to a temporary problem (such as
|
||||
a network issue while downloading binaries from the NixOS binary
|
||||
|
@ -186,7 +186,7 @@ Retype new UNIX password: ***
|
|||
<listitem><para>If everything went well:
|
||||
|
||||
<screen>
|
||||
$ reboot</screen>
|
||||
# reboot</screen>
|
||||
|
||||
</para></listitem>
|
||||
|
||||
|
@ -235,15 +235,15 @@ drive (here <filename>/dev/sda</filename>). <xref linkend="ex-config"
|
|||
|
||||
<example xml:id='ex-install-sequence'><title>Commands for Installing NixOS on <filename>/dev/sda</filename></title>
|
||||
<screen>
|
||||
$ fdisk /dev/sda # <lineannotation>(or whatever device you want to install on)</lineannotation>
|
||||
$ mkfs.ext4 -L nixos /dev/sda1
|
||||
$ mkswap -L swap /dev/sda2
|
||||
$ swapon /dev/sda2
|
||||
$ mount /dev/disk/by-label/nixos /mnt
|
||||
$ nixos-generate-config --root /mnt
|
||||
$ nano /mnt/etc/nixos/configuration.nix
|
||||
$ nixos-install
|
||||
$ reboot</screen>
|
||||
# fdisk /dev/sda # <lineannotation>(or whatever device you want to install on)</lineannotation>
|
||||
# mkfs.ext4 -L nixos /dev/sda1
|
||||
# mkswap -L swap /dev/sda2
|
||||
# swapon /dev/sda2
|
||||
# mount /dev/disk/by-label/nixos /mnt
|
||||
# nixos-generate-config --root /mnt
|
||||
# nano /mnt/etc/nixos/configuration.nix
|
||||
# nixos-install
|
||||
# reboot</screen>
|
||||
</example>
|
||||
|
||||
<example xml:id='ex-config'><title>NixOS Configuration</title>
|
||||
|
|
|
@ -60,33 +60,33 @@ the <literal>nixos-14.12</literal> channel. To see which NixOS
|
|||
channel you’re subscribed to, run the following as root:
|
||||
|
||||
<screen>
|
||||
$ nix-channel --list | grep nixos
|
||||
# nix-channel --list | grep nixos
|
||||
nixos https://nixos.org/channels/nixos-unstable
|
||||
</screen>
|
||||
|
||||
To switch to a different NixOS channel, do
|
||||
|
||||
<screen>
|
||||
$ nix-channel --add https://nixos.org/channels/<replaceable>channel-name</replaceable> nixos
|
||||
# nix-channel --add https://nixos.org/channels/<replaceable>channel-name</replaceable> nixos
|
||||
</screen>
|
||||
|
||||
(Be sure to include the <literal>nixos</literal> parameter at the
|
||||
end.) For instance, to use the NixOS 14.12 stable channel:
|
||||
|
||||
<screen>
|
||||
$ nix-channel --add https://nixos.org/channels/nixos-14.12 nixos
|
||||
# nix-channel --add https://nixos.org/channels/nixos-14.12 nixos
|
||||
</screen>
|
||||
|
||||
If you have a server, you may want to use the “small” channel instead:
|
||||
|
||||
<screen>
|
||||
$ nix-channel --add https://nixos.org/channels/nixos-14.12-small nixos
|
||||
# nix-channel --add https://nixos.org/channels/nixos-14.12-small nixos
|
||||
</screen>
|
||||
|
||||
And if you want to live on the bleeding edge:
|
||||
|
||||
<screen>
|
||||
$ nix-channel --add https://nixos.org/channels/nixos-unstable nixos
|
||||
# nix-channel --add https://nixos.org/channels/nixos-unstable nixos
|
||||
</screen>
|
||||
|
||||
</para>
|
||||
|
@ -95,7 +95,7 @@ $ nix-channel --add https://nixos.org/channels/nixos-unstable nixos
|
|||
channel by running
|
||||
|
||||
<screen>
|
||||
$ nixos-rebuild switch --upgrade
|
||||
# nixos-rebuild switch --upgrade
|
||||
</screen>
|
||||
|
||||
which is equivalent to the more verbose <literal>nix-channel --update
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<refentry xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle><filename>configuration.nix</filename></refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
|
@ -34,5 +34,5 @@ therein.</para>
|
|||
<xi:include href="options-db.xml" />
|
||||
|
||||
</refsection>
|
||||
|
||||
|
||||
</refentry>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<refentry xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle><command>nixos-build-vms</command></refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
|
@ -42,10 +42,10 @@ points to the generated virtual network.
|
|||
services.openssh.enable = true;
|
||||
nixpkgs.system = "i686-linux";
|
||||
deployment.targetHost = "test1.example.net";
|
||||
|
||||
|
||||
# Other NixOS options
|
||||
};
|
||||
|
||||
|
||||
test2 = {pkgs, config, ...}:
|
||||
{
|
||||
services.openssh.enable = true;
|
||||
|
@ -53,7 +53,7 @@ points to the generated virtual network.
|
|||
environment.systemPackages = [ pkgs.lynx ];
|
||||
nixpkgs.system = "x86_64-linux";
|
||||
deployment.targetHost = "test2.example.net";
|
||||
|
||||
|
||||
# Other NixOS options
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<refentry xmlns="http://docbook.org/ns/docbook"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle><command>nixos-option</command></refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
|
@ -64,7 +64,7 @@ $ nixos-option boot.loader.grub.enable
|
|||
Value:
|
||||
true
|
||||
|
||||
Default:
|
||||
Default:
|
||||
true
|
||||
|
||||
Description:
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
version="5.0"
|
||||
xml:id="book-nixos-manual">
|
||||
|
||||
|
||||
<info>
|
||||
<title>NixOS Manual</title>
|
||||
<subtitle>Version <xi:include href="version" parse="text" /></subtitle>
|
||||
|
@ -26,6 +26,9 @@
|
|||
xlink:href="https://github.com/NixOS/nixpkgs/issues">NixOS’ GitHub
|
||||
issue tracker</link>.</para>
|
||||
|
||||
<note><para>Commands prefixed with <literal>#</literal> have to be run as
|
||||
root, either requiring to login as root user or temporarily switching
|
||||
to it using <literal>sudo</literal> for example.</para></note>
|
||||
</preface>
|
||||
|
||||
<xi:include href="installation/installation.xml" />
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
<xsl:output method='xml' encoding="UTF-8" />
|
||||
|
||||
<xsl:param name="revision" />
|
||||
<xsl:param name="program" />
|
||||
|
||||
|
||||
<xsl:template match="/expr/list">
|
||||
|
@ -188,7 +189,7 @@
|
|||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:when>
|
||||
<xsl:when test="$revision != 'local' and contains(@value, 'nixops') and contains(@value, '/nix/')">
|
||||
<xsl:when test="$revision != 'local' and $program = 'nixops' and contains(@value, '/nix/')">
|
||||
<xsl:attribute name="xlink:href">https://github.com/NixOS/nixops/blob/<xsl:value-of select="$revision"/>/nix/<xsl:value-of select="substring-after(@value, '/nix/')"/></xsl:attribute>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
|
|
|
@ -104,8 +104,8 @@ in
|
|||
# changing them would not rebuild the manual
|
||||
nixosLabel = mkDefault (maybeEnv "NIXOS_LABEL" cfg.nixosVersion);
|
||||
nixosVersion = mkDefault (maybeEnv "NIXOS_VERSION" (cfg.nixosRelease + cfg.nixosVersionSuffix));
|
||||
nixosRevision = mkIf (pathExists gitRepo) (mkDefault gitCommitId);
|
||||
nixosVersionSuffix = mkIf (pathExists gitRepo) (mkDefault (".git." + gitCommitId));
|
||||
nixosRevision = mkIf (pathIsDirectory gitRepo) (mkDefault gitCommitId);
|
||||
nixosVersionSuffix = mkIf (pathIsDirectory gitRepo) (mkDefault (".git." + gitCommitId));
|
||||
|
||||
# Note: code names must only increase in alphabetical order.
|
||||
nixosCodeName = "Flounder";
|
||||
|
|
|
@ -128,6 +128,7 @@
|
|||
./services/continuous-integration/jenkins/default.nix
|
||||
./services/continuous-integration/jenkins/slave.nix
|
||||
./services/continuous-integration/jenkins/job-builder.nix
|
||||
./services/continuous-integration/hydra/default.nix
|
||||
./services/databases/4store-endpoint.nix
|
||||
./services/databases/4store.nix
|
||||
./services/databases/couchdb.nix
|
||||
|
|
|
@ -0,0 +1,418 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.services.hydra;
|
||||
|
||||
baseDir = "/var/lib/hydra";
|
||||
|
||||
hydraConf = pkgs.writeScript "hydra.conf" cfg.extraConfig;
|
||||
|
||||
hydraEnv =
|
||||
{ HYDRA_DBI = cfg.dbi;
|
||||
HYDRA_CONFIG = "${baseDir}/hydra.conf";
|
||||
HYDRA_DATA = "${baseDir}";
|
||||
};
|
||||
|
||||
env =
|
||||
{ NIX_REMOTE = "daemon";
|
||||
SSL_CERT_FILE = "/etc/ssl/certs/ca-certificates.crt"; # Remove in 16.03
|
||||
PGPASSFILE = "${baseDir}/pgpass";
|
||||
NIX_REMOTE_SYSTEMS = concatStringsSep ":" cfg.buildMachinesFiles;
|
||||
} // optionalAttrs (cfg.smtpHost != null) {
|
||||
EMAIL_SENDER_TRANSPORT = "SMTP";
|
||||
EMAIL_SENDER_TRANSPORT_host = cfg.smtpHost;
|
||||
} // hydraEnv // cfg.extraEnv;
|
||||
|
||||
serverEnv = env //
|
||||
{ HYDRA_TRACKER = cfg.tracker;
|
||||
COLUMNS = "80";
|
||||
PGPASSFILE = "${baseDir}/pgpass-www"; # grrr
|
||||
} // (optionalAttrs cfg.debugServer { DBIC_TRACE = "1"; });
|
||||
|
||||
localDB = "dbi:Pg:dbname=hydra;user=hydra;";
|
||||
|
||||
haveLocalDB = cfg.dbi == localDB;
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
###### interface
|
||||
options = {
|
||||
|
||||
services.hydra = rec {
|
||||
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Whether to run Hydra services.
|
||||
'';
|
||||
};
|
||||
|
||||
dbi = mkOption {
|
||||
type = types.str;
|
||||
default = localDB;
|
||||
example = "dbi:Pg:dbname=hydra;host=postgres.example.org;user=foo;";
|
||||
description = ''
|
||||
The DBI string for Hydra database connection.
|
||||
'';
|
||||
};
|
||||
|
||||
package = mkOption {
|
||||
type = types.path;
|
||||
default = pkgs.hydra;
|
||||
defaultText = "pkgs.hydra";
|
||||
description = "The Hydra package.";
|
||||
};
|
||||
|
||||
hydraURL = mkOption {
|
||||
type = types.str;
|
||||
description = ''
|
||||
The base URL for the Hydra webserver instance. Used for links in emails.
|
||||
'';
|
||||
};
|
||||
|
||||
listenHost = mkOption {
|
||||
type = types.str;
|
||||
default = "*";
|
||||
example = "localhost";
|
||||
description = ''
|
||||
The hostname or address to listen on or <literal>*</literal> to listen
|
||||
on all interfaces.
|
||||
'';
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
type = types.int;
|
||||
default = 3000;
|
||||
description = ''
|
||||
TCP port the web server should listen to.
|
||||
'';
|
||||
};
|
||||
|
||||
minimumDiskFree = mkOption {
|
||||
type = types.int;
|
||||
default = 0;
|
||||
description = ''
|
||||
Threshold of minimum disk space (GiB) to determine if the queue runner should run or not.
|
||||
'';
|
||||
};
|
||||
|
||||
minimumDiskFreeEvaluator = mkOption {
|
||||
type = types.int;
|
||||
default = 0;
|
||||
description = ''
|
||||
Threshold of minimum disk space (GiB) to determine if the evaluator should run or not.
|
||||
'';
|
||||
};
|
||||
|
||||
notificationSender = mkOption {
|
||||
type = types.str;
|
||||
description = ''
|
||||
Sender email address used for email notifications.
|
||||
'';
|
||||
};
|
||||
|
||||
smtpHost = mkOption {
|
||||
type = types.nullOr types.str;
|
||||
default = null;
|
||||
example = ["localhost"];
|
||||
description = ''
|
||||
Hostname of the SMTP server to use to send email.
|
||||
'';
|
||||
};
|
||||
|
||||
tracker = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
description = ''
|
||||
Piece of HTML that is included on all pages.
|
||||
'';
|
||||
};
|
||||
|
||||
logo = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
description = ''
|
||||
Path to a file containing the logo of your Hydra instance.
|
||||
'';
|
||||
};
|
||||
|
||||
debugServer = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = "Whether to run the server in debug mode.";
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.lines;
|
||||
description = "Extra lines for the Hydra configuration.";
|
||||
};
|
||||
|
||||
extraEnv = mkOption {
|
||||
type = types.attrsOf types.str;
|
||||
default = {};
|
||||
description = "Extra environment variables for Hydra.";
|
||||
};
|
||||
|
||||
gcRootsDir = mkOption {
|
||||
type = types.path;
|
||||
default = "/nix/var/nix/gcroots/hydra";
|
||||
description = "Directory that holds Hydra garbage collector roots.";
|
||||
};
|
||||
|
||||
buildMachinesFiles = mkOption {
|
||||
type = types.listOf types.path;
|
||||
default = [];
|
||||
example = [ "/etc/nix/machines" "/var/lib/hydra/provisioner/machines" ];
|
||||
description = "List of files containing build machines.";
|
||||
};
|
||||
|
||||
useSubstitutes = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Whether to use binary caches for downloading store paths. Note that
|
||||
binary substitutions trigger (a potentially large number of) additional
|
||||
HTTP requests that slow down the queue monitor thread significantly.
|
||||
Also, this Hydra instance will serve those downloaded store paths to
|
||||
its users with its own signature attached as if it had built them
|
||||
itself, so don't enable this feature unless your active binary caches
|
||||
are absolute trustworthy.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
users.extraGroups.hydra = { };
|
||||
|
||||
users.extraUsers.hydra =
|
||||
{ description = "Hydra";
|
||||
group = "hydra";
|
||||
createHome = true;
|
||||
home = baseDir;
|
||||
useDefaultShell = true;
|
||||
};
|
||||
|
||||
users.extraUsers.hydra-queue-runner =
|
||||
{ description = "Hydra queue runner";
|
||||
group = "hydra";
|
||||
useDefaultShell = true;
|
||||
home = "${baseDir}/queue-runner"; # really only to keep SSH happy
|
||||
};
|
||||
|
||||
users.extraUsers.hydra-www =
|
||||
{ description = "Hydra web server";
|
||||
group = "hydra";
|
||||
useDefaultShell = true;
|
||||
};
|
||||
|
||||
nix.trustedUsers = [ "hydra-queue-runner" ];
|
||||
|
||||
services.hydra.extraConfig =
|
||||
''
|
||||
using_frontend_proxy 1
|
||||
base_uri ${cfg.hydraURL}
|
||||
notification_sender ${cfg.notificationSender}
|
||||
max_servers 25
|
||||
${optionalString (cfg.logo != null) ''
|
||||
hydra_logo ${cfg.logo}
|
||||
''}
|
||||
gc_roots_dir ${cfg.gcRootsDir}
|
||||
'';
|
||||
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
|
||||
environment.variables = hydraEnv;
|
||||
|
||||
nix.extraOptions = ''
|
||||
gc-keep-outputs = true
|
||||
gc-keep-derivations = true
|
||||
|
||||
# The default (`true') slows Nix down a lot since the build farm
|
||||
# has so many GC roots.
|
||||
gc-check-reachability = false
|
||||
'';
|
||||
|
||||
systemd.services.hydra-init =
|
||||
{ wantedBy = [ "multi-user.target" ];
|
||||
requires = optional haveLocalDB "postgresql.service";
|
||||
after = optional haveLocalDB "postgresql.service";
|
||||
environment = env;
|
||||
preStart = ''
|
||||
mkdir -p ${baseDir}
|
||||
chown hydra.hydra ${baseDir}
|
||||
chmod 0750 ${baseDir}
|
||||
|
||||
ln -sf ${hydraConf} ${baseDir}/hydra.conf
|
||||
|
||||
mkdir -m 0700 -p ${baseDir}/www
|
||||
chown hydra-www.hydra ${baseDir}/www
|
||||
|
||||
mkdir -m 0700 -p ${baseDir}/queue-runner
|
||||
mkdir -m 0750 -p ${baseDir}/build-logs
|
||||
chown hydra-queue-runner.hydra ${baseDir}/queue-runner ${baseDir}/build-logs
|
||||
|
||||
${optionalString haveLocalDB ''
|
||||
if ! [ -e ${baseDir}/.db-created ]; then
|
||||
${config.services.postgresql.package}/bin/createuser hydra
|
||||
${config.services.postgresql.package}/bin/createdb -O hydra hydra
|
||||
touch ${baseDir}/.db-created
|
||||
fi
|
||||
''}
|
||||
|
||||
if [ ! -e ${cfg.gcRootsDir} ]; then
|
||||
|
||||
# Move legacy roots directory.
|
||||
if [ -e /nix/var/nix/gcroots/per-user/hydra/hydra-roots ]; then
|
||||
mv /nix/var/nix/gcroots/per-user/hydra/hydra-roots ${cfg.gcRootsDir}
|
||||
fi
|
||||
|
||||
mkdir -p ${cfg.gcRootsDir}
|
||||
fi
|
||||
|
||||
# Move legacy hydra-www roots.
|
||||
if [ -e /nix/var/nix/gcroots/per-user/hydra-www/hydra-roots ]; then
|
||||
find /nix/var/nix/gcroots/per-user/hydra-www/hydra-roots/ -type f \
|
||||
| xargs -r mv -f -t ${cfg.gcRootsDir}/
|
||||
rmdir /nix/var/nix/gcroots/per-user/hydra-www/hydra-roots
|
||||
fi
|
||||
|
||||
chown hydra.hydra ${cfg.gcRootsDir}
|
||||
chmod 2775 ${cfg.gcRootsDir}
|
||||
'';
|
||||
serviceConfig.ExecStart = "${cfg.package}/bin/hydra-init";
|
||||
serviceConfig.PermissionsStartOnly = true;
|
||||
serviceConfig.User = "hydra";
|
||||
serviceConfig.Type = "oneshot";
|
||||
serviceConfig.RemainAfterExit = true;
|
||||
};
|
||||
|
||||
systemd.services.hydra-server =
|
||||
{ wantedBy = [ "multi-user.target" ];
|
||||
requires = [ "hydra-init.service" ];
|
||||
after = [ "hydra-init.service" ];
|
||||
environment = serverEnv;
|
||||
serviceConfig =
|
||||
{ ExecStart =
|
||||
"@${cfg.package}/bin/hydra-server hydra-server -f -h '${cfg.listenHost}' "
|
||||
+ "-p ${toString cfg.port} --max_spare_servers 5 --max_servers 25 "
|
||||
+ "--max_requests 100 ${optionalString cfg.debugServer "-d"}";
|
||||
User = "hydra-www";
|
||||
PermissionsStartOnly = true;
|
||||
Restart = "always";
|
||||
};
|
||||
};
|
||||
|
||||
systemd.services.hydra-queue-runner =
|
||||
{ wantedBy = [ "multi-user.target" ];
|
||||
requires = [ "hydra-init.service" ];
|
||||
after = [ "hydra-init.service" "network.target" ];
|
||||
path = [ cfg.package pkgs.nettools pkgs.openssh pkgs.bzip2 config.nix.package ];
|
||||
environment = env // {
|
||||
PGPASSFILE = "${baseDir}/pgpass-queue-runner"; # grrr
|
||||
IN_SYSTEMD = "1"; # to get log severity levels
|
||||
};
|
||||
serviceConfig =
|
||||
{ ExecStart = "@${cfg.package}/bin/hydra-queue-runner hydra-queue-runner -v --option build-use-substitutes ${if cfg.useSubstitutes then "true" else "false"}";
|
||||
ExecStopPost = "${cfg.package}/bin/hydra-queue-runner --unlock";
|
||||
User = "hydra-queue-runner";
|
||||
Restart = "always";
|
||||
|
||||
# Ensure we can get core dumps.
|
||||
LimitCORE = "infinity";
|
||||
WorkingDirectory = "${baseDir}/queue-runner";
|
||||
};
|
||||
};
|
||||
|
||||
systemd.services.hydra-evaluator =
|
||||
{ wantedBy = [ "multi-user.target" ];
|
||||
requires = [ "hydra-init.service" ];
|
||||
after = [ "hydra-init.service" "network.target" ];
|
||||
path = [ pkgs.nettools ];
|
||||
environment = env;
|
||||
serviceConfig =
|
||||
{ ExecStart = "@${cfg.package}/bin/hydra-evaluator hydra-evaluator";
|
||||
User = "hydra";
|
||||
Restart = "always";
|
||||
WorkingDirectory = baseDir;
|
||||
};
|
||||
};
|
||||
|
||||
systemd.services.hydra-update-gc-roots =
|
||||
{ requires = [ "hydra-init.service" ];
|
||||
after = [ "hydra-init.service" ];
|
||||
environment = env;
|
||||
serviceConfig =
|
||||
{ ExecStart = "@${cfg.package}/bin/hydra-update-gc-roots hydra-update-gc-roots";
|
||||
User = "hydra";
|
||||
};
|
||||
startAt = "2,14:15";
|
||||
};
|
||||
|
||||
systemd.services.hydra-send-stats =
|
||||
{ wantedBy = [ "multi-user.target" ];
|
||||
after = [ "hydra-init.service" ];
|
||||
environment = env;
|
||||
serviceConfig =
|
||||
{ ExecStart = "@${cfg.package}/bin/hydra-send-stats hydra-send-stats";
|
||||
User = "hydra";
|
||||
};
|
||||
};
|
||||
|
||||
# If there is less than a certain amount of free disk space, stop
|
||||
# the queue/evaluator to prevent builds from failing or aborting.
|
||||
systemd.services.hydra-check-space =
|
||||
{ script =
|
||||
''
|
||||
if [ $(($(stat -f -c '%a' /nix/store) * $(stat -f -c '%S' /nix/store))) -lt $((${toString cfg.minimumDiskFree} * 1024**3)) ]; then
|
||||
echo "stopping Hydra queue runner due to lack of free space..."
|
||||
systemctl stop hydra-queue-runner
|
||||
fi
|
||||
if [ $(($(stat -f -c '%a' /nix/store) * $(stat -f -c '%S' /nix/store))) -lt $((${toString cfg.minimumDiskFreeEvaluator} * 1024**3)) ]; then
|
||||
echo "stopping Hydra evaluator due to lack of free space..."
|
||||
systemctl stop hydra-evaluator
|
||||
fi
|
||||
'';
|
||||
startAt = "*:0/5";
|
||||
};
|
||||
|
||||
# Periodically compress build logs. The queue runner compresses
|
||||
# logs automatically after a step finishes, but this doesn't work
|
||||
# if the queue runner is stopped prematurely.
|
||||
systemd.services.hydra-compress-logs =
|
||||
{ path = [ pkgs.bzip2 ];
|
||||
script =
|
||||
''
|
||||
find /var/lib/hydra/build-logs -type f -name "*.drv" -mtime +3 -size +0c | xargs -r bzip2 -v -f
|
||||
'';
|
||||
startAt = "Sun 01:45";
|
||||
};
|
||||
|
||||
services.postgresql.enable = mkIf haveLocalDB true;
|
||||
|
||||
services.postgresql.identMap = optionalString haveLocalDB
|
||||
''
|
||||
hydra-users hydra hydra
|
||||
hydra-users hydra-queue-runner hydra
|
||||
hydra-users hydra-www hydra
|
||||
hydra-users root hydra
|
||||
'';
|
||||
|
||||
services.postgresql.authentication = optionalString haveLocalDB
|
||||
''
|
||||
local hydra all ident map=hydra-users
|
||||
'';
|
||||
|
||||
};
|
||||
|
||||
}
|
|
@ -41,6 +41,8 @@ if [ ! -e /proc/1 ]; then
|
|||
mount -n -t proc proc /proc
|
||||
mkdir -m 0755 -p /dev
|
||||
mount -t devtmpfs devtmpfs /dev
|
||||
mkdir -m 0755 -p /sys
|
||||
mount -t sysfs sysfs /sys
|
||||
fi
|
||||
|
||||
|
||||
|
|
|
@ -77,7 +77,7 @@ in
|
|||
KERNEL=="vboxuser", OWNER="root", GROUP="root", MODE="0666"
|
||||
|
||||
# Allow systemd dependencies on vboxguest.
|
||||
KERNEL=="vboxguest", TAG+="systemd"
|
||||
SUBSYSTEM=="misc", KERNEL=="vboxguest", TAG+="systemd"
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
import ./make-test.nix ({ pkgs, ...} : {
|
||||
import ./make-test.nix ({ pkgs, ...} :
|
||||
|
||||
{
|
||||
name = "sddm";
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ ttuegel ];
|
||||
|
@ -6,6 +8,7 @@ import ./make-test.nix ({ pkgs, ...} : {
|
|||
|
||||
machine = { lib, ... }: {
|
||||
imports = [ ./common/user-account.nix ];
|
||||
virtualisation.memorySize = 1024;
|
||||
services.xserver.enable = true;
|
||||
services.xserver.displayManager.sddm = {
|
||||
enable = true;
|
||||
|
@ -14,18 +17,38 @@ import ./make-test.nix ({ pkgs, ...} : {
|
|||
user = "alice";
|
||||
};
|
||||
};
|
||||
services.xserver.windowManager.default = "icewm";
|
||||
services.xserver.windowManager.icewm.enable = true;
|
||||
services.xserver.desktopManager.default = "none";
|
||||
services.xserver.desktopManager.kde5.enable = true;
|
||||
};
|
||||
|
||||
enableOCR = true;
|
||||
|
||||
testScript = { nodes, ... }: ''
|
||||
startAll;
|
||||
$machine->waitForFile("/home/alice/.Xauthority");
|
||||
$machine->succeed("xauth merge ~alice/.Xauthority");
|
||||
$machine->waitForWindow("^IceWM ");
|
||||
testScript = { nodes, ... }:
|
||||
let xdo = "${pkgs.xdotool}/bin/xdotool"; in
|
||||
''
|
||||
sub krunner {
|
||||
my ($win,) = @_;
|
||||
$machine->execute("${xdo} key Alt+F2 sleep 1 type $win");
|
||||
$machine->execute("${xdo} search --sync --onlyvisible --class krunner sleep 5 key Return");
|
||||
}
|
||||
|
||||
$machine->waitUntilSucceeds("pgrep plasmashell");
|
||||
$machine->succeed("xauth merge ~alice/.Xauthority");
|
||||
$machine->waitForWindow(qr/Desktop.*/);
|
||||
|
||||
# Check that logging in has given the user ownership of devices.
|
||||
$machine->succeed("getfacl /dev/snd/timer | grep -q alice");
|
||||
|
||||
krunner("dolphin");
|
||||
$machine->waitForWindow(qr/.*Dolphin/);
|
||||
|
||||
krunner("konsole");
|
||||
$machine->waitForWindow(qr/.*Konsole/);
|
||||
|
||||
krunner("systemsettings5");
|
||||
$machine->waitForWindow(qr/.*Settings/);
|
||||
$machine->sleep(20);
|
||||
|
||||
$machine->execute("${xdo} key Alt+F1 sleep 10");
|
||||
$machine->screenshot("screen");
|
||||
'';
|
||||
})
|
||||
|
|
|
@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = git://git.ardour.org/ardour/ardour.git;
|
||||
rev = "7024232855d268633760674d34c096ce447b7240";
|
||||
sha256 = "ede3730455c3c91b2fd612871fa7262bdacd3dff4ba77c5dfbc3c1f0de9b8a36";
|
||||
sha256 = "0pnnx22asizin5rvf352nfv6003zarw3jd64magp10310wrfiwbq";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/harryhaaren/openAV-ArtyFX.git";
|
||||
rev = "3a8cb9a5e4ffaf27a497a31cc9cd6f2e79622d5b";
|
||||
sha256 = "2e3f6ab6f829c0ec177e85f4e419286616cf35fb7303445caa09d3438cac27d5";
|
||||
sha256 = "0nsmycm64a686ysfnmdvnaazijvfj90z5wyp96kyr81nsrbcv2ij";
|
||||
};
|
||||
|
||||
buildInputs = [ cairomm cmake libjack2 libpthreadstubs libXdmcp libxshmfence libsndfile lv2 ntk pkgconfig ];
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/DISTRHO/DISTRHO-Ports.git";
|
||||
rev = "53458838505efef91ed069d0a7d970b6b3588eba";
|
||||
sha256 = "0fb4dxfvvqy8lnm9c91sxwn5wbcw8grfpm52zag25vrls251aih3";
|
||||
sha256 = "1wjzgy5yyi52fn4si2m8zrbbzqsh3p75avfx744jmxj5gpq5qa92";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
|
|
|
@ -14,7 +14,7 @@ let
|
|||
src = fetchgit {
|
||||
url = "git://git.code.sf.net/p/faudiostream/code";
|
||||
rev = "931fca3e649f99ef09025d37bd6a7dc70a03e6f6";
|
||||
sha256 = "05yam8jfdnziysvpxa5w118k5bbl103vamyqgka6vyhjjizp1nx7";
|
||||
sha256 = "1h2qfwxqf9406v0w6kqyxlzn88zw3xmwgxg9f01n4jvd72zxll78";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/OSSIA/i-score.git";
|
||||
rev = "ede2453b139346ae46702b5e2643c5488f8c89fb";
|
||||
sha256 = "04li771nj0k8gym7vg6rnawjkp2f6d5m5mby26h0k6ksf7hg7h70";
|
||||
sha256 = "0mk0zsqhx9z7ry1amjki89h6yp5ysi1qgy2j3kzhrm5sfazvf0x3";
|
||||
leaveDotGit = true;
|
||||
deepClone = true;
|
||||
};
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation {
|
|||
src = fetchgit {
|
||||
url = https://github.com/swh/ladspa.git;
|
||||
rev = "4b8437e8037cace3d5bf8ce6d1d1da0182aba686";
|
||||
sha256 = "7d9aa13a064903b330bd52e35c1f810f1c8a253ea5eb4e5a3a69a051af03150e";
|
||||
sha256 = "1rmqm4780dhp0pj2scl3k7m8hpp1x6w6ln4wwg954zb9570rqaxx";
|
||||
};
|
||||
|
||||
buildInputs = [ autoreconfHook fftw ladspaH libxml2 pkgconfig perl perlPackages.XMLParser ];
|
||||
|
|
|
@ -8,7 +8,7 @@ pythonPackages.buildPythonApplication rec {
|
|||
src = fetchgit {
|
||||
url = "git://github.com/aszlig/LastWatch.git";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "c43f0fd87e9f3daafc7e8676daf2e89c8e21fbabc278eb1455e28d2997587a92";
|
||||
sha256 = "0nlng3595j5jvnikk8i5hb915zak5zsmfn2306cc4gfcns9xzjwp";
|
||||
};
|
||||
|
||||
pythonPath = [
|
||||
|
|
|
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
|||
url = "https://github.com/thomasvs/morituri.git";
|
||||
fetchSubmodules = true;
|
||||
rev = "135b2f7bf27721177e3aeb1d26403f1b29116599";
|
||||
sha256 = "1ccxq1spny6xgd7nqwn13n9nqa00ay0nhflg3vbdkvbirh8fgxwq";
|
||||
sha256 = "1sl5y5j3gdbynf2v0gf9dwd2hzawj8lm8ywadid7qm34yn8lx12k";
|
||||
};
|
||||
|
||||
pythonPath = [
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/cth103/plugin-torture";
|
||||
rev = "9ee06016982bdfbaa215cd0468cc6ada6367462a";
|
||||
sha256 = "bfe9213fd2c1451d7acc1381d63301c4e6ff69ce86d31a886ece5159ba850706";
|
||||
sha256 = "0ynzfs3z95lbw4l1w276as2a37zxp0cw6pi3lbikr0qk0r7j5j10";
|
||||
};
|
||||
|
||||
buildInputs = [ boost ladspaH lilv lv2 pkgconfig serd sord sratom ];
|
||||
|
|
|
@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/swh/lv2.git";
|
||||
rev = "978d5d8f549fd22048157a6d044af0faeaacbd7f";
|
||||
sha256 = "3a9c042785b856623339aedafa5bc019b41beb8034d8594c7bbd6c9c26368065";
|
||||
sha256 = "10jj8sp67caxvmzjxwyzapc34jpry5nrkkp49kyyvyk5dgkpbsjw";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
|
|
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
|||
url = "https://github.com/zamaudio/zam-plugins.git";
|
||||
deepClone = true;
|
||||
rev = "91fe56931a3e57b80f18c740d2dde6b44f962aee";
|
||||
sha256 = "1s0s028h3z3pfd4qvi63fsg6bv33bvz0p5fbmbmhypzqjlx6mlkb";
|
||||
sha256 = "1ldrqh6nk0m1axb553wjp1gfznw8b6b3k0v0z1jdwy425sl6g07d";
|
||||
};
|
||||
|
||||
buildInputs = [ boost libX11 mesa liblo libjack2 ladspaH lv2 pkgconfig rubberband libsndfile ];
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
{ stdenv, fetchurl, makeWrapper, jre, cpio, gawk, gnugrep, gnused, procps, swt, gtk2, glib, libXtst }:
|
||||
|
||||
let
|
||||
version = "4.6.0";
|
||||
rev = "3"; #tracks unversioned changes that occur on download.code42.com from time to time
|
||||
version = "4.7.0";
|
||||
rev = "1"; #tracks unversioned changes that occur on download.code42.com from time to time
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "crashplan-${version}-r${rev}";
|
||||
|
||||
crashPlanArchive = fetchurl {
|
||||
url = "https://download.code42.com/installs/linux/install/CrashPlan/CrashPlan_${version}_Linux.tgz";
|
||||
sha256 = "0crrx8gy132xcpjfah08qhsl8g2arx14p5mpypcihl9j6mldi6mz";
|
||||
sha256 = "1r50fyswvqjxsdslbyibbxwz2fs8iim15hxr0k05jrzmkhjm4g5v";
|
||||
};
|
||||
|
||||
srcs = [ crashPlanArchive ];
|
||||
|
|
|
@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/cask/cask.git";
|
||||
rev = "717b64a9ba7640ec366e8573da0c01f9c4d57b0c";
|
||||
sha256 = "0j18rzgpibisfcci6kcgjs8nlkfi1dw33dxp6ab6zaiarydwgcs5";
|
||||
sha256 = "0bq24hac1z77g1bybwlk991dcc3pss2gjpwq0a6vvrqg5hw02lsf";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs python ];
|
||||
|
|
|
@ -5,7 +5,7 @@ clangStdenv.mkDerivation {
|
|||
src = fetchgit {
|
||||
url = "git://github.com/Golevka/emacs-clang-complete-async.git";
|
||||
rev = "f01488971ec8b5752780d130fb84de0c16a46f31";
|
||||
sha256 = "1c8zqi6axbsb951azz9iqx3j52j30nd9ypv396hvids3g02cirrf";
|
||||
sha256 = "01smjinrvx0w5z847a43fh2hyr6rrq1kaglfakbr6dcr313w89x9";
|
||||
};
|
||||
|
||||
buildInputs = [ llvmPackages.llvm ];
|
||||
|
|
|
@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/sigma/gh.el.git";
|
||||
rev = "ef03b63d063ec22f03af449aa955c98dfad7f80e";
|
||||
sha256 = "efa231e0091e8c7785385149dc97b2d8dc24aba65f4b0974b8ed7f62b7596ad3";
|
||||
sha256 = "1pciq16vl5l4kvj08q4ib1jzk2bb2y1makcsyaw8k9jblqviw756";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
|
|
@ -6,7 +6,7 @@ stdenv.mkDerivation {
|
|||
src = fetchgit {
|
||||
url = "git://github.com/mooz/js2-mode.git";
|
||||
rev = "3abcd90ddc2f446ddf0fb874dd79ba870c26ad2d";
|
||||
sha256 = "c0aaab4eeb8d60cfd5c382c3e30d4725e5ec492720d573e663ea69ee43aa73a8";
|
||||
sha256 = "0sh9ax2w0ydhjjn4vnwbgy3926p7ad6h6nmsnm0a3zlldj9a4vwn";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
|
|
@ -2397,7 +2397,7 @@
|
|||
src = fetchgit {
|
||||
url = "https://bitbucket.org/ukaszg/aria2.git";
|
||||
rev = "3c54254e424c6c8b4eb0d8e7c4907b094c27a3f0";
|
||||
sha256 = "1z6smlc5cpf6kswbibhwwx3h5khsbj38a371lsjjhgmharg7a4r7";
|
||||
sha256 = "1xkgz3l7idw5bk1xlffdaddf5v1q6fm3grbryl4xvssrbwgnyisf";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/aria2";
|
||||
|
@ -3977,7 +3977,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://git.savannah.nongnu.org/bbdb.git";
|
||||
rev = "8fce6df3ab09250d545a2ed373ae64e68d12ff4c";
|
||||
sha256 = "09ib71b669sccp0x5lf2ic4gzdqcmmdx918n870lhabqhn0gw3g2";
|
||||
sha256 = "1nglakzpcy2pizg80ny1w972vq74v5jgzdvgqp69jkb7312cqzvd";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/bbdb";
|
||||
|
@ -15800,7 +15800,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://git.sv.gnu.org/emms.git";
|
||||
rev = "ac15f46e19d259e5d49acdac877d0793be1c1ebe";
|
||||
sha256 = "1y6l74sr553vygwpyf7di8cdg98hqpzccz81n24vj11a8g9qly1q";
|
||||
sha256 = "03vvqp08vkgqqrfcnxfnx0z1dl0wpljgkjkavfyjsd1h7npxs7ik";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/emms";
|
||||
|
@ -24342,7 +24342,7 @@
|
|||
src = fetchgit {
|
||||
url = "https://go.googlesource.com/tools";
|
||||
rev = "9ae4729fba20b3533d829a9c6ba8195b068f2abc";
|
||||
sha256 = "1sg01rgccb8f7793m987y8avz8gixqag5hgxs184m61hr5brrak4";
|
||||
sha256 = "1j51aaskfqc953p5s9naqimr04hzfijm4yczdsiway1xnnvvpfr1";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/go-guru";
|
||||
|
@ -24467,7 +24467,7 @@
|
|||
src = fetchgit {
|
||||
url = "https://go.googlesource.com/tools";
|
||||
rev = "9ae4729fba20b3533d829a9c6ba8195b068f2abc";
|
||||
sha256 = "1sg01rgccb8f7793m987y8avz8gixqag5hgxs184m61hr5brrak4";
|
||||
sha256 = "1j51aaskfqc953p5s9naqimr04hzfijm4yczdsiway1xnnvvpfr1";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/go-rename";
|
||||
|
@ -29707,7 +29707,7 @@
|
|||
src = fetchgit {
|
||||
url = "https://gitlab.lrde.epita.fr/spot/emacs-modes.git";
|
||||
rev = "3c608e15b655d2375c5f81323ac561c7848dc029";
|
||||
sha256 = "1s3wgsgl1min2zbfr6wacb7wnff95r8kgmfzlma8b02440cmch5z";
|
||||
sha256 = "19360wx1i7lkr8igddm7zl9yh5hlm3r013rkd512cs18iz1y753x";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/hoa-mode";
|
||||
|
@ -29853,7 +29853,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://git.osdn.jp/gitroot/howm/howm.git";
|
||||
rev = "6d6b4ca60e5c164a3e284ba82156b8ae33e83b7a";
|
||||
sha256 = "0q9rjy8i263d6fcyj0s1l95s7vajf15i2fkbkbmhh4rp63nd04g3";
|
||||
sha256 = "1ib97y2vm8whd2rqb8kgh0fk54mk3qjmij05bzmz4njz0k9crwgd";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/howm";
|
||||
|
@ -29956,7 +29956,7 @@
|
|||
src = fetchgit {
|
||||
url = "http://fly.srk.fer.hr/~hniksic/emacs/htmlize.git";
|
||||
rev = "aa6e2f6dba6fdfa200c7c55efe29ff63380eac8f";
|
||||
sha256 = "0lc2j0zifjwzab2khwmd769i5497ddx28rb96y6zv2k261xziyla";
|
||||
sha256 = "1vkqxgirc82vc44g7xhhr041arf93yirjin3h144kjyfkgkplnkp";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/htmlize";
|
||||
|
@ -35798,7 +35798,7 @@
|
|||
src = fetchgit {
|
||||
url = "http://llvm.org/git/llvm";
|
||||
rev = "5afdcbe0c7cd2abeff450f66487800052a2df423";
|
||||
sha256 = "152im9nwy1rssd8rfh9rfk0pcw558g7m8cfmn83hy2sdicgyn3d7";
|
||||
sha256 = "0xah53a68ikdq38racgsp5cp4fz5v32l4rj9s0risyy7fdyp01b1";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/llvm-mode";
|
||||
|
@ -43091,7 +43091,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://orgmode.org/org-mode.git";
|
||||
rev = "9a7bf6d6496a4415ca33b92941e4dbc2c4676855";
|
||||
sha256 = "0zbfgzhqbb1bcx23i3xn5r4q414w1drqqs6zfxcha65v6mijkgkc";
|
||||
sha256 = "1m0d0xknl18vg7hnryahll3izhcspp8wzk7j0yrh2piwhbipp0l8";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/org-mac-iCal";
|
||||
|
@ -43111,7 +43111,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://orgmode.org/org-mode.git";
|
||||
rev = "9a7bf6d6496a4415ca33b92941e4dbc2c4676855";
|
||||
sha256 = "0zbfgzhqbb1bcx23i3xn5r4q414w1drqqs6zfxcha65v6mijkgkc";
|
||||
sha256 = "1m0d0xknl18vg7hnryahll3izhcspp8wzk7j0yrh2piwhbipp0l8";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/org-mac-link";
|
||||
|
@ -50614,7 +50614,7 @@
|
|||
src = fetchgit {
|
||||
url = "http://www.foldr.org/~michaelw/projects/redshank.git";
|
||||
rev = "f98e68f532e622bcd464292ca4a9cf5fbea14ebb";
|
||||
sha256 = "14p39gl4bvicqxf6rjzsyixv8ac6ib2vk680zbi7l55a1kdwaism";
|
||||
sha256 = "1jdkgvd5xy9hl5q611jwah2n05abjp7qcy9sj4k1z11x0ii62b6p";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/redshank";
|
||||
|
@ -55909,7 +55909,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://git.freebsoft.org/git/speechd-el";
|
||||
rev = "3d729817296b2ed8ad414a6aa044a8aa762259eb";
|
||||
sha256 = "0cjw47ziv50b3i95i9y0r8rvgchawzkknv5sqr882aqqb8zgy6rc";
|
||||
sha256 = "044fmr2053vkd8s7kzd2v9qlz6lr8k88kfnxpiwpcbn7pb198iir";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/speechd-el";
|
||||
|
@ -64566,7 +64566,7 @@
|
|||
src = fetchgit {
|
||||
url = "https://bitbucket.org/Soft/zenity-color-picker.el.git";
|
||||
rev = "4f4f46676a461ebc881487fb70c8c181e323db5e";
|
||||
sha256 = "1abm0wmfkhbwdnqnvjd9r0pm7ahkcj7ip7jcz6rm49qam815g7rk";
|
||||
sha256 = "14i2k52qz77dv04w39fyp9hfq983fwa3803anqragk608xgwpf4s";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/zenity-color-picker";
|
||||
|
|
|
@ -1277,7 +1277,7 @@
|
|||
src = fetchgit {
|
||||
url = "http://repo.or.cz/r/anything-config.git";
|
||||
rev = "6b9718fba257e6c2912ba70f9895251ab1926928";
|
||||
sha256 = "08f7qxwnvykmxwrii3nv1fnai4mqs2ir5419k0llj6mkrik0gfc6";
|
||||
sha256 = "040znq4qv6rqjw05klriasysvsx6s6xn00ssc3acbqdqjgjk8l2a";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/anything";
|
||||
|
@ -5055,7 +5055,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://jblevins.org/git/deft.git";
|
||||
rev = "4001a55cf5f79cdbfa00f1405e8a4645af4acd40";
|
||||
sha256 = "1s71xk5c1hck7lh780lpa1q1c8qdpf2wdahl2406mgf06y1ifp7b";
|
||||
sha256 = "157c6ck6gb59i7dikbdnaq7cwlh3nnk0vqgil4v1294s2xbpp46n";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/deft";
|
||||
|
@ -7796,7 +7796,7 @@
|
|||
src = fetchgit {
|
||||
url = "https://bitbucket.org/olanilsson/ert-junit";
|
||||
rev = "341c755e7b60f8d2081303951377968b1d1a6c23";
|
||||
sha256 = "1hsp0jp9gyfr6rhfsjgi55x4lqjlh1w13y90rrlnbxb0499zpa33";
|
||||
sha256 = "0y06i97bbim6lmvk8l3adifwzhkjyrgyxv02ksshk4npr0b627gx";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/ert-junit";
|
||||
|
@ -10488,7 +10488,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://factorcode.org/git/factor.git";
|
||||
rev = "905ec06d864537fb6be9c46ad98f1b6d101dfbf0";
|
||||
sha256 = "146iqy3rjr5yv19wbaq5dqm3kjxyjly7i27qjvk0yj1yja2y4j5k";
|
||||
sha256 = "0ip7azxi5nvp8vvi15ds46mgs0fmi7gq97f2iz1c7m67ml5wi2g7";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/fuel";
|
||||
|
@ -15386,7 +15386,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://git.code.sf.net/p/emacs-jabber/git";
|
||||
rev = "2999f58619dd9c20cc6cac8060c4c850a504cbbd";
|
||||
sha256 = "0d6dwj45rrvh3dlrhdmqkxjmd439a1x3h88czdg7np2m5q2xg2dg";
|
||||
sha256 = "03x93wkd8syj2ybf5ymwcm6khx0h5nhrl8pyync1520294pq6i1i";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/jabber";
|
||||
|
@ -19090,7 +19090,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://git.notmuchmail.org/git/notmuch";
|
||||
rev = "ea5caecec5c50833a6f5a422e217a71eee6324af";
|
||||
sha256 = "0n471pjj433jivmwbifzw8x6ya09v52yvgdjfkxcp2a6mn23k6xm";
|
||||
sha256 = "0883vwwcir5w3b4831y46bcm80z7chqri4wsx7qxc2ynw0a4qfx3";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/notmuch";
|
||||
|
@ -19896,7 +19896,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://orgmode.org/org-mode.git";
|
||||
rev = "592dc2ee7e4c80b9b61efb77117c8dc22d6cefd1";
|
||||
sha256 = "055ahg27z4y0r4nhgqdik10x91dpmfmrv1mbr7hc7xzk9cy4rf2w";
|
||||
sha256 = "0rvsn085r1sgvv0gwvjlfgn7371bjd254hdzamc97m122pqr7cxr";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/org-mac-iCal";
|
||||
|
@ -21181,7 +21181,7 @@
|
|||
src = fetchgit {
|
||||
url = "http://git.zx2c4.com/password-store";
|
||||
rev = "1aac79d9617431bbaf218f9a9d270929762d2816";
|
||||
sha256 = "0c5yjjvvlrcny13sg5kaadbqnc2wdcc2qrxn11gc70q9awv0n7gp";
|
||||
sha256 = "0zlhiqhx19dpmxvcczhif5c8acj911p61plsp0gdmamkpbxmkbjv";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/password-store";
|
||||
|
@ -25818,7 +25818,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://repo.or.cz/stgit.git";
|
||||
rev = "48e5cef14cea5c810833d119900cd484c2a6ca85";
|
||||
sha256 = "05jy51g2krmj1c3rq8k7lihml1m4x6j73lkf8z1qwg35kmadzi8j";
|
||||
sha256 = "0hgqxhqnc93pnh6j3hyi92hfx1cbdjylzqb2nl6ldsz1g2wdcw9r";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/stgit";
|
||||
|
@ -25901,7 +25901,7 @@
|
|||
src = fetchgit {
|
||||
url = "git://git.savannah.nongnu.org/stumpwm.git";
|
||||
rev = "4d0603e52b5bab993b3be63e3654c74f641e677d";
|
||||
sha256 = "0a0lwwlly4hlmb30bk6dmi6bsdsy37g4crvv1z24gixippyv1qzm";
|
||||
sha256 = "0pn3xjz433b0djcys25a8fv775yqmj3qgg0hyghgxjpzsh6k2a4f";
|
||||
};
|
||||
recipeFile = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/milkypostman/melpa/50e8d089f4e163eb459fc602cb90440b110b489f/recipes/stumpwm-mode";
|
||||
|
|
|
@ -6,7 +6,7 @@ stdenv.mkDerivation (rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/ProofGeneral/PG.git";
|
||||
rev = "16991280fb09743ae7320aef77f6a166afb907d7";
|
||||
sha256 = "08zhfl6xbl4q7lrl7wdp72xr155k06778by0d60g28mfx59b7sqc";
|
||||
sha256 = "1yakjxfz6a09m7lrxff04sj1717gpmhq2bsibd5f9lkp6z0w2i0q";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs texinfo perl which ] ++ stdenv.lib.optional enableDoc texLive;
|
||||
|
|
|
@ -8,7 +8,7 @@ pythonPackages.buildPythonApplication rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/leo-editor/leo-editor";
|
||||
rev = "refs/tags/Leo-${version}-final";
|
||||
sha256 = "3cc5259609890bbde9cfee71f4f60b959b3f5b740f7d403c99ea2d9796b4758e";
|
||||
sha256 = "0km5mvzfpfbxxhcjr4if24qhgk2c7dsvmfinz0zrbfriip848vcp";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with pythonPackages; [ pyqt4 sqlite3 ];
|
||||
|
|
|
@ -4,7 +4,7 @@ args@{ fetchgit, stdenv, ncurses, pkgconfig, gettext
|
|||
, libICE, ... }: with args;
|
||||
|
||||
let tag = "20140827";
|
||||
sha256 = "02adf2212872db3c5d133642d2c12fbfc28b506e4c0c42552e3d079756f63f65";
|
||||
sha256 = "0ncgbcm23z25naicxqkblz0mcl1zar2qwgi37y5ar8q8884w9ml2";
|
||||
in
|
||||
|
||||
let inherit (args.composableDerivation) composableDerivation edf; in
|
||||
|
|
|
@ -12,7 +12,7 @@ in
|
|||
src = fetchgit {
|
||||
url = "git://github.com/mkeeter/antimony.git";
|
||||
rev = gitRev;
|
||||
sha256 = "19ir3y5ipmfyygcn8mbxika4j3af6dfrv54dvhn6maz7dy8h30f4";
|
||||
sha256 = "0azjdkbixz2pyk2yy7a0ya5xk60xgw3l2pd4pj4ijyqxx5jmh0sy";
|
||||
};
|
||||
|
||||
patches = [ ./paths-fix.patch ];
|
||||
|
|
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/GilesBathgate/RapCAD.git";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "15c18jvgbwyrfhv7r35ih0gzx35vjlsbi984h1sckgh2z17hjq8l";
|
||||
sha256 = "1i5h4sw7mdbpdbssmbjccwgidndrsc606zz4wy9pjsg2wzrabw7x";
|
||||
};
|
||||
|
||||
buildInputs = [ qtbase qmakeHook cgal boost gmp mpfr flex bison dxflib readline mesa_glu ];
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
callPackage ./generic.nix (args // {
|
||||
version = "2016-05-09";
|
||||
src = fetchgit {
|
||||
sha256 = "5e3d647503d1231395a6782c6aa536b52b3d45585a87a0600ce0aca8b422cf82";
|
||||
sha256 = "17y2l59vz2l0y5ya89390x6lim75p1mp8s5c2wzp9l4d5fy8j8dd";
|
||||
rev = "1e013654cc3af09f4731ab9ec8d8324d03a7de4a";
|
||||
url = "git://alioth.debian.org/git/sane/sane-backends.git";
|
||||
};
|
||||
|
|
|
@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
wrapProgram $out/bin/shutter \
|
||||
--set PERL5LIB "${stdenv.lib.makePerlPath perlModules}" \
|
||||
--prefix PATH : "${imagemagick}/bin" \
|
||||
--prefix PATH : "${imagemagick.out}/bin" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE"
|
||||
'';
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ stdenv.mkDerivation {
|
|||
name = "solvespace-2.0";
|
||||
src = fetchgit {
|
||||
url = "https://github.com/jwesthues/solvespace.git";
|
||||
sha256 = "0sakxkmj2f0k27f67wy1xz2skpnwzg15yqrf7av97pgc5s8xb3da";
|
||||
sha256 = "0m6zlx1kiqxkm6szdsnywwr6spnb7xjg6vqsq30nrr44cx37w861";
|
||||
rev = "e587d0e";
|
||||
};
|
||||
|
||||
|
|
|
@ -5,12 +5,12 @@
|
|||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.57.1";
|
||||
version = "2.58.0";
|
||||
name = "calibre-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.calibre-ebook.com/${version}/${name}.tar.xz";
|
||||
sha256 = "0bgkm2cf1icx73v7r6njkx31jdm3l7psnfwd9kjqc21p7ii70h11";
|
||||
sha256 = "0npqvfjqj1vwa7nmnsyd4d30z40brydw275ldf1jankrp6dr9dyd";
|
||||
};
|
||||
|
||||
inherit python;
|
||||
|
|
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/ckolivas/cgminer.git";
|
||||
rev = "refs/tags/v3.7.2";
|
||||
sha256 = "0hl71328l19rlclajb6k9xsqybm2ln8g44p788gijpw4laj9yli6";
|
||||
sha256 = "1xfzx91dpwjj1vmhas3v9ybs0p2i74lrhinijmpav15acfggm9fq";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/dpayne/cli-visualizer.git";
|
||||
rev = "bc0104eb57e7a0b3821510bc8f93cf5d1154fa8e";
|
||||
sha256 = "7b0c69a16b4854149522e2d0ec544412fb368cecba771d1e9481330ed86c8cb7";
|
||||
sha256 = "16768gyi85mkizfn874q2q9xf32knw08z27si3k5bk99492dxwzw";
|
||||
};
|
||||
|
||||
buildInputs = [ fftw ncurses libpulseaudio ];
|
||||
|
|
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/Swordfish90/cool-retro-term.git";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "042ikarg6n0c09niwrm987pkzi8xjxxdrg2nqvk9pj7lgmmkkfn1";
|
||||
sha256 = "19sf9ppp2xzwfjwmdqgq9pils4yafsz662n1h65sv5aq04c7gmxs";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = https://github.com/evopedia/evopedia_qt;
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "1biq9zaj8nhxx1pixidsn97iwp9qy1yslgl0znpa4d4p35jcg48g";
|
||||
sha256 = "0snp5qiywj306kfaywvkl7j34fivgxcb8dids1lzmbqq5xcpqqvc";
|
||||
};
|
||||
|
||||
buildInputs = [ bzip2 qt4 libX11 ];
|
||||
|
|
|
@ -11,7 +11,7 @@ stdenv.mkDerivation {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/p-e-w/finalterm.git";
|
||||
rev = "39b078b2a96a5c3c9e74f92b1929f383d220ca8b";
|
||||
sha256 = "c3ec9b36692b66a3aaa3125b2947c83beda4705b6d6f4a10b9bde9d8db8367c5";
|
||||
sha256 = "14viln5nabr39lafg1lzf6ydibz1h5d9346drp435ljxc6wsh21i";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "git://github.com/mossmann/hackrf";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "0wa4m0kdq8q2ib724w8ry8shmmm1liaaawhjygrjx6zxz9jxr3vm";
|
||||
sha256 = "1mn11yz6hbkmvrbxj5vnp78m5dsny96821a9ffpvbdcwx3s2p23m";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
|
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = https://bitbucket.org/lucashnegri/kgocode.git;
|
||||
rev = "024536e4b2f371db4f51c1d80fb6b444352ff6a6";
|
||||
sha256 = "1cjxcy4w46rbx90jrikklh9vw7nz641gq7xlvrq3pjsszxn537gq";
|
||||
sha256 = "10q4nvx3wz5wl3wwpfprz26j4x59s41bpdgafbg6604im58hklal";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -9,7 +9,7 @@ in stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "git://repo.or.cz/llpp.git";
|
||||
rev = "e9fe06d684b145a104cc319673076e069e853cac";
|
||||
sha256 = "0x3hgn6sfjln2sqdw40ylcj943rn732a6mlfwz01llx8ykiyvsvq";
|
||||
sha256 = "0w6kdjmh6jp5j88m213r0dg66ma42nxl6j4hjy4xnhkf52mg0iwx";
|
||||
fetchSubmodules = false;
|
||||
};
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@ py.buildPythonApplication rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/sommer/loxodo.git";
|
||||
rev = "6c56efb4511fd6f645ad0f8eb3deafc8071c5795";
|
||||
sha256 = "02whmv4am8cz401rplplqzbipkyf0wd69z43sd3yw05rh7f3xbs2";
|
||||
sha256 = "1cg0dfcv57ps54f1a0ksib7hgkrbdi9q699w302xyyfyvjcb5dd2";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with py; [ wxPython python.modules.readline ];
|
||||
|
|
|
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
|||
url = "https://github.com/uglide/RedisDesktopManager.git";
|
||||
fetchSubmodules = true;
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "08969xwqpjgvfa195dxskpr54p4mnapgfykcffpqpczp990ak1l6";
|
||||
sha256 = "0a7xa39qp1q32zkypw32mm3wi8wbhxhvrm6l3xsa3k1jzih7hzxr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeQtWrapper qmakeHook ];
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "git://git.osmocom.org/rtl-sdr.git";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "00r5d08r12zzkd0xggd7l7p4r2278rzdhqdaihwjlajmr9qd3hs1";
|
||||
sha256 = "1dh52xcvxkjb3mj80wlm20grz8cqf5wipx2ksi91ascz12b5pym6";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake pkgconfig libusb1 ];
|
||||
|
|
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "git://github.com/alexrj/Slic3r";
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "1xwl8ay5m6pwrrnhbmnmpwyh4wc8hsi4ldzgq98f4bh6szj6jh4z";
|
||||
sha256 = "1z8h11k29b7z49z5k8ikyfiijyycy1q3krlzi8hfd0vdybvymw21";
|
||||
};
|
||||
|
||||
buildInputs = with perlPackages; [ perl makeWrapper which
|
||||
|
|
|
@ -6,7 +6,7 @@ stdenv.mkDerivation {
|
|||
src = fetchgit {
|
||||
url = https://github.com/seenaburns/stag.git;
|
||||
rev = "90e2964959ea8242349250640d24cee3d1966ad6";
|
||||
sha256 = "88628dfa07a0772c7eca0cc66ef2d8f3e20297deec021c776a82fe1323bafb0f";
|
||||
sha256 = "1yrzjhcwrxrxq5jj695wvpgb0pz047m88yq5n5ymkcw5qr78fy1v";
|
||||
};
|
||||
|
||||
buildInputs = [ stdenv curses ];
|
||||
|
|
|
@ -8,7 +8,7 @@ mkDerivation {
|
|||
version = "0.2.0.3";
|
||||
src = fetchgit {
|
||||
url = "https://github.com/NorfairKing/super-user-spark";
|
||||
sha256 = "718b6760e76377aa37b145d0dff690b293325b510ce05d239c4fa28538420931";
|
||||
sha256 = "1w9c2b1fxqxp2q5jxsvnrfqvyvpk8q70qqsgzshmghx0yylx9cns";
|
||||
rev = "a7d132f7631649c3a093ede286e66f78e9793fba";
|
||||
};
|
||||
isLibrary = false;
|
||||
|
|
|
@ -10,7 +10,7 @@ let
|
|||
src = fetchgit {
|
||||
url = "https://github.com/thestinger/termite";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "1k91nw19c0p5ghqhs00mn9npa91idfkyiwik3ng6hb4jbnblp5ph";
|
||||
sha256 = "1cw4yw7n9m2si8b7zcfyz9pyihncabxm5g39v1mxslfajxgwzmd8";
|
||||
};
|
||||
|
||||
makeFlags = [ "VERSION=v${version}" "PREFIX=" "DESTDIR=$(out)" ];
|
||||
|
|
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://git.tasktools.org/scm/tm/timew.git";
|
||||
rev = "2175849a81ddd03707dca7b4c9d69d8fa11e35f7";
|
||||
sha256 = "1c55a5jsm9n2zcyskklhqiclnlb2pz2h7klbzx481nsn62xd6bbg";
|
||||
sha256 = "0clhbm6093wnvpq0ypvx95095amvlzab0sz9kiflasw9mgnwisrv";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
|
|
@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/sboli/twmn.git";
|
||||
rev = "9492a47e25547e602dd57efd807033677c90b150";
|
||||
sha256 = "9c91e9d3d6d7f9d90d34da6f1a4b9f3dee65605c1e43729417d6921c54dded6b";
|
||||
sha256 = "1a68gka9gyxyzhc9rn8df59rzcdwkjw90cxp1kk0rdfp6svhxhsa";
|
||||
};
|
||||
|
||||
buildInputs = [ qtbase qtx11extras pkgconfig boost qmakeHook ];
|
||||
|
|
|
@ -1,24 +1,26 @@
|
|||
{ pkgs, fetchurl, stdenv, ncurses, utillinux, file, libX11, which, groff }:
|
||||
{ stdenv, fetchurl
|
||||
, pkgconfig
|
||||
, ncurses, libX11
|
||||
, utillinux, file, which, groff
|
||||
}:
|
||||
|
||||
let
|
||||
stdenv.mkDerivation rec {
|
||||
name = "vifm-${version}";
|
||||
version = "0.8";
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
inherit name;
|
||||
version = "0.8.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/project/vifm/vifm/${name}.tar.bz2";
|
||||
sha256 = "1syyvdcgwnvjxzmpf9f4gfi0ipwmlavg11zr7wiz8qplvi86psv9";
|
||||
sha256 = "0yf3xc4czdrcbvmhq7d4xkck5phrmxwybmnv1zdb56qg56baq64r";
|
||||
};
|
||||
|
||||
buildInputs = [ utillinux ncurses file libX11 which groff ];
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ ncurses libX11 utillinux file which groff ];
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "A vi-like file manager";
|
||||
maintainers = with pkgs.lib.maintainers; [ raskin garbas ];
|
||||
platforms = pkgs.lib.platforms.linux;
|
||||
license = pkgs.lib.licenses.gpl2;
|
||||
maintainers = with maintainers; [ raskin garbas ];
|
||||
platforms = platforms.linux;
|
||||
license = licenses.gpl2;
|
||||
};
|
||||
|
||||
passthru = {
|
||||
|
|
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = git://repo.or.cz/conkeror.git;
|
||||
rev = "3e4732cd0d15aa70121fe0a0403103b777c964bf";
|
||||
sha256 = "1c4ri6011wqnkkz1gcn4l6dkvz693mycwqgncbanhydmy8pcb7jk";
|
||||
sha256 = "1299b1kdfd2vip3w02jzvj2i8scjpsvpx19d2c8ms2pizz7xxmp4";
|
||||
};
|
||||
|
||||
buildInputs = [ unzip makeWrapper ];
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation {
|
|||
src = fetchgit {
|
||||
url = "https://bitbucket.org/portix/dwb";
|
||||
rev = "7fb82bc1db36a5d1d2436088c9b58054d2c51f96";
|
||||
sha256 = "16y3cfk4bq89d1lzpj4ci4gq9cx5m2br5i7kmw5rv396527yvn0i";
|
||||
sha256 = "1wg7pslcx7z4fw595a3nbnygxy2bwfj0h377i48mxhddvl3wzzbq";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig makeWrapper gsettings_desktop_schemas libsoup
|
||||
|
|
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = https://git.pwmt.org/pwmt/jumanji.git;
|
||||
rev = "f8e04e5b5a9fec47d49ca63a096e5d35be281151";
|
||||
sha256 = "1xq06iabr4y76faf4w1cx6fhwdksfsxggz1ndny7icniwjzk98h9";
|
||||
sha256 = "1dsbyz489fx7dp07i29q1rjkl7nhrfscc8ks8an2rdyhx3457asg";
|
||||
};
|
||||
|
||||
buildInputs = [ girara pkgconfig gtk webkitgtk makeWrapper gsettings_desktop_schemas ];
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = git://anongit.kde.org/kwebkitpart;
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "0kszffgg3zpf319lmzlmdba5gq8kdr5xwb69xwy4s2abc9nvwvbi";
|
||||
sha256 = "13vfv88njml7x67a37ymmlv9qs30fkmvkq0278lp7llmvp5qnxcj";
|
||||
};
|
||||
|
||||
patches = [ ./CVE-2014-8600.diff ];
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/airbnb/chronos";
|
||||
rev = version;
|
||||
sha256 = "6c463c30530dc82276d30087e7ab08d6964b884232c0a93f691cef9fa1ff2651";
|
||||
sha256 = "0hrln3ad2g2cq2xqmy5mq32cdxxb9vb6v6jp6kcq03f8km6v3g9c";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper curl jdk maven nodejs mesos ];
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = https://github.com/openshift/origin.git;
|
||||
rev = "1b601951daa44964c9bc7e4a2264d65489e3a58c";
|
||||
sha256 = "0nwyj3cgajmbd356w0362zxkd3p3pply58an2bmi3d3bswp3k89g";
|
||||
sha256 = "0hvipgnkpph81jx6h6bar49j5zkrxzi6h71b4y75c0l7af129wdi";
|
||||
leaveDotGit = true;
|
||||
deepClone = true;
|
||||
};
|
||||
|
|
|
@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
rev = "refs/tags/v${version}";
|
||||
url = "git://github.com/CenturyLinkLabs/panamax-api";
|
||||
sha256 = "1g75y25asj33gcczpb9iwnk6f7afm1xjqyw803rr3y2h7dm6jivy";
|
||||
sha256 = "0dqg0fbmy5cgjh0ql8yqlybhjyyrslgghjrc24wjhd1rghjn2qi6";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper sqlite openssl env.ruby bundler ];
|
||||
|
|
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
rev = "refs/tags/v${version}";
|
||||
url = "git://github.com/CenturyLinkLabs/panamax-ui";
|
||||
sha256 = "0vwy0gazfx3zkf2bx862jspidgn5p97d3jaq99x38qfhxp554sn9";
|
||||
sha256 = "01k0h0rjqp5arvwxm2xpfxjsag5qw0qqlg7hx4v8f6jsyc4wmjfl";
|
||||
};
|
||||
|
||||
buildInputs = [ makeWrapper env.ruby openssl sqlite bundler ];
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/akrennmair/newsbeuter.git";
|
||||
rev = "1427bdb0705806368db39576a9b803df82fa0415";
|
||||
sha256 = "b29a304a46bf56b439d0d35ea586f7fd0fbf1a5565dca95de76e774885d8b64b";
|
||||
sha256 = "1g47b8pxkz84r5m3avkjb7p2i88crcrp9gxwhq7xdfywrgg9pgnd";
|
||||
};
|
||||
|
||||
buildInputs
|
||||
|
|
|
@ -11,7 +11,7 @@ let
|
|||
name="${baseName}-${version}";
|
||||
url="https://github.com/GNUFreetalk/freetalk";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256="0vh6snkd66gdzimdiyy9idhsip60d5xc7qh4w48k7n8h93ydrb2b";
|
||||
sha256="1wr3q40f4gwmr0vm6w07d5vzr65q6llk9xxq75klpcj83va5l3xv";
|
||||
};
|
||||
buildInputs = [
|
||||
guile pkgconfig glib loudmouth gmp libidn readline libtool
|
||||
|
|
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/dreadatour/pidgin-mra";
|
||||
rev = "${version}";
|
||||
sha256 = "1nhfx9gi5lhh2xjr9rw600bb53ly2nwiqq422vc0f297qkm1q9y0";
|
||||
sha256 = "1adq57g11kw7bfpivyvfk3nlpjkc8raiw4bzn3gn4nx3m0wl99vw";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
qtbase, qtsvg, qttools, qmakeHook, qttranslations, sqlcipher }:
|
||||
|
||||
let
|
||||
version = "1.3.0";
|
||||
version = "1.4.1";
|
||||
revision = "v${version}";
|
||||
in
|
||||
|
||||
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||
owner = "tux3";
|
||||
repo = "qTox";
|
||||
rev = revision;
|
||||
sha256 = "0z2rxsa23vpl4q0h63mybw7kv8n1sm6nwb93l0cc046a3n9axid8";
|
||||
sha256 = "1n0bfcfc90pnh0bzas7gv60jicsg9vpfwhhln9hkllsrimjvcdq5";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
|
|
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/Aseman-Land/Cutegram.git";
|
||||
rev = "1dbe2792fb5a1760339379907f906e236c09db84";
|
||||
sha256 = "080153bpa92jpi0zdrfajrn0yqy3jp8m4704sirbz46dv7471rzl";
|
||||
sha256 = "146vd3ri05da2asxjjxibnqmb685lgwl2kaz7mwb7ja7vi4149f0";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/vysheng/tg.git";
|
||||
sha256 = "07x6172nyipbz4bk7n417a2ydj5r7y1ch2zl3hp79nckfw11fix7";
|
||||
sha256 = "07sss5cnw2ygd7mp8f5532lmj7qm6ywqf4cjaq5g13i8igzqzwzj";
|
||||
rev = "6547c0b21b977b327b3c5e8142963f4bc246187a";
|
||||
};
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
src = fetchgit {
|
||||
url = "https://github.com/communi/communi-desktop.git";
|
||||
rev = "ad1b9a30ed6c51940c0d2714b126a32b5d68c876";
|
||||
sha256 = "0gk6gck09zb44qfsal7bs4ln2vl9s9x3vfxh7jvfc7mmf7l3sspd";
|
||||
sha256 = "0jx963pfvzk4dbk8mrmzfrhzybk5y6ib9yzaj662wliayrzj7vpg";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeQtWrapper qmakeHook ];
|
||||
|
|
|
@ -7,7 +7,7 @@ pythonPackages.buildPythonApplication rec {
|
|||
src = fetchgit {
|
||||
url = "git://github.com/pagekite/Mailpile";
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "0h84cc9kwb0m4admqjkpg4pllxlh095rmzvrql45kz71fpnxs780";
|
||||
sha256 = "118b5zwfwmzj38p0mkj3r1s09jxg8x38y0a42b21imzpmli5vpb5";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue