mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-30 10:53:11 +00:00
Merge branch 'master' of github.com:aycanirican/nixpkgs
This commit is contained in:
commit
7ef7e9ce73
@ -21,18 +21,18 @@ all: NEWS.html NEWS.txt manual.html manual.pdf
|
||||
|
||||
NEWS.html: release-notes.xml
|
||||
$(XSLTPROC) --nonet --xinclude --output $@ $(NEWS_OPTS) \
|
||||
$(docbookxsl)/html/docbook.xsl release-notes.xml
|
||||
$(docbookxsl)/xhtml/docbook.xsl release-notes.xml
|
||||
|
||||
NEWS.txt: release-notes.xml
|
||||
$(XSLTPROC) --nonet --xinclude quote-literals.xsl release-notes.xml | \
|
||||
$(XSLTPROC) --nonet --output $@.tmp.html $(NEWS_OPTS) \
|
||||
$(docbookxsl)/html/docbook.xsl -
|
||||
$(docbookxsl)/xhtml/docbook.xsl -
|
||||
LANG=en_US w3m -dump $@.tmp.html > $@
|
||||
rm $@.tmp.html
|
||||
|
||||
manual.html: *.xml
|
||||
$(XSLTPROC) --nonet --xinclude --output manual.html \
|
||||
$(docbookxsl)/html/docbook.xsl manual.xml
|
||||
$(docbookxsl)/xhtml/docbook.xsl manual.xml
|
||||
|
||||
manual.pdf: *.xml
|
||||
$(dblatex) \
|
||||
|
@ -38,6 +38,7 @@
|
||||
emery = "Emery Hemingway <emery@vfemail.net>";
|
||||
ertes = "Ertugrul Söylemez <ertesx@gmx.de>";
|
||||
falsifian = "James Cook <james.cook@utoronto.ca>";
|
||||
flosse = "Markus Kohlhase <mail@markus-kohlhase.de>";
|
||||
fuuzetsu = "Mateusz Kowalczyk <fuuzetsu@fuuzetsu.co.uk>";
|
||||
garbas = "Rok Garbas <rok@garbas.si>";
|
||||
goibhniu = "Cillian de Róiste <cillian.deroiste@gmail.com>";
|
||||
@ -47,6 +48,7 @@
|
||||
iElectric = "Domen Kozar <domen@dev.si>";
|
||||
iyzsong = "Song Wenwu <iyzsong@gmail.com>";
|
||||
jcumming = "Jack Cummings <jack@mudshark.org>";
|
||||
jgeerds = "Jascha Geerds <jg@ekby.de>";
|
||||
joamaki = "Jussi Maki <joamaki@gmail.com>";
|
||||
joelteon = "Joel Taylor <me@joelt.io>";
|
||||
jwiegley = "John Wiegley <johnw@newartisans.com>";
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
with pkgs;
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
|
@ -14,7 +14,7 @@ in
|
||||
|
||||
options = {
|
||||
|
||||
networking.extraHosts = pkgs.lib.mkOption {
|
||||
networking.extraHosts = lib.mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
example = "192.168.0.1 lanlocalhost";
|
||||
@ -23,7 +23,7 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
networking.dnsSingleRequest = pkgs.lib.mkOption {
|
||||
networking.dnsSingleRequest = lib.mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
with pkgs;
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, lib, pkgs, utils, ... }:
|
||||
|
||||
with lib;
|
||||
with utils;
|
||||
with lib;
|
||||
|
||||
{
|
||||
|
||||
|
@ -27,7 +27,7 @@ with lib;
|
||||
|
||||
environment.etc."odbcinst.ini".text =
|
||||
let inis = config.environment.unixODBCDrivers;
|
||||
in pkgs.lib.concatStringsSep "\n" inis;
|
||||
in lib.concatStringsSep "\n" inis;
|
||||
|
||||
};
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
|
||||
@ -6,9 +6,9 @@
|
||||
|
||||
options = {
|
||||
|
||||
networking.enableIntel2100BGFirmware = pkgs.lib.mkOption {
|
||||
networking.enableIntel2100BGFirmware = lib.mkOption {
|
||||
default = false;
|
||||
type = pkgs.lib.types.bool;
|
||||
type = lib.types.bool;
|
||||
description = ''
|
||||
Turn on this option if you want firmware for the Intel
|
||||
PRO/Wireless 2100BG to be loaded automatically. This is
|
||||
@ -21,7 +21,7 @@
|
||||
|
||||
###### implementation
|
||||
|
||||
config = pkgs.lib.mkIf config.networking.enableIntel2100BGFirmware {
|
||||
config = lib.mkIf config.networking.enableIntel2100BGFirmware {
|
||||
|
||||
hardware.enableAllFirmware = true;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
|
||||
@ -6,9 +6,9 @@
|
||||
|
||||
options = {
|
||||
|
||||
networking.enableIntel2200BGFirmware = pkgs.lib.mkOption {
|
||||
networking.enableIntel2200BGFirmware = lib.mkOption {
|
||||
default = false;
|
||||
type = pkgs.lib.types.bool;
|
||||
type = lib.types.bool;
|
||||
description = ''
|
||||
Turn on this option if you want firmware for the Intel
|
||||
PRO/Wireless 2200BG to be loaded automatically. This is
|
||||
@ -21,7 +21,7 @@
|
||||
|
||||
###### implementation
|
||||
|
||||
config = pkgs.lib.mkIf config.networking.enableIntel2200BGFirmware {
|
||||
config = lib.mkIf config.networking.enableIntel2200BGFirmware {
|
||||
|
||||
hardware.enableAllFirmware = true;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
|
||||
@ -6,9 +6,9 @@
|
||||
|
||||
options = {
|
||||
|
||||
networking.enableIntel3945ABGFirmware = pkgs.lib.mkOption {
|
||||
networking.enableIntel3945ABGFirmware = lib.mkOption {
|
||||
default = false;
|
||||
type = pkgs.lib.types.bool;
|
||||
type = lib.types.bool;
|
||||
description = ''
|
||||
This option enables automatic loading of the firmware for the Intel
|
||||
PRO/Wireless 3945ABG.
|
||||
@ -20,7 +20,7 @@
|
||||
|
||||
###### implementation
|
||||
|
||||
config = pkgs.lib.mkIf config.networking.enableIntel3945ABGFirmware {
|
||||
config = lib.mkIf config.networking.enableIntel3945ABGFirmware {
|
||||
|
||||
hardware.enableAllFirmware = true;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{pkgs, config, ...}:
|
||||
{pkgs, config, lib, ...}:
|
||||
|
||||
{
|
||||
|
||||
@ -6,9 +6,9 @@
|
||||
|
||||
options = {
|
||||
|
||||
networking.enableRalinkFirmware = pkgs.lib.mkOption {
|
||||
networking.enableRalinkFirmware = lib.mkOption {
|
||||
default = false;
|
||||
type = pkgs.lib.types.bool;
|
||||
type = lib.types.bool;
|
||||
description = ''
|
||||
Turn on this option if you want firmware for the RT73 NIC.
|
||||
'';
|
||||
@ -19,7 +19,7 @@
|
||||
|
||||
###### implementation
|
||||
|
||||
config = pkgs.lib.mkIf config.networking.enableRalinkFirmware {
|
||||
config = lib.mkIf config.networking.enableRalinkFirmware {
|
||||
hardware.enableAllFirmware = true;
|
||||
};
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{pkgs, config, ...}:
|
||||
{pkgs, config, lib, ...}:
|
||||
|
||||
{
|
||||
|
||||
@ -6,9 +6,9 @@
|
||||
|
||||
options = {
|
||||
|
||||
networking.enableRTL8192cFirmware = pkgs.lib.mkOption {
|
||||
networking.enableRTL8192cFirmware = lib.mkOption {
|
||||
default = false;
|
||||
type = pkgs.lib.types.bool;
|
||||
type = lib.types.bool;
|
||||
description = ''
|
||||
Turn on this option if you want firmware for the RTL8192c (and related) NICs.
|
||||
'';
|
||||
@ -19,7 +19,7 @@
|
||||
|
||||
###### implementation
|
||||
|
||||
config = pkgs.lib.mkIf config.networking.enableRTL8192cFirmware {
|
||||
config = lib.mkIf config.networking.enableRTL8192cFirmware {
|
||||
hardware.enableAllFirmware = true;
|
||||
};
|
||||
|
||||
|
@ -1,9 +1,9 @@
|
||||
{pkgs, config, ...}:
|
||||
{lib, config, ...}:
|
||||
|
||||
{
|
||||
hardware = {
|
||||
pcmcia = {
|
||||
firmware = [ (pkgs.lib.cleanSource ./firmware) ];
|
||||
firmware = [ (lib.cleanSource ./firmware) ];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -84,7 +84,7 @@ in
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
assertions = pkgs.lib.singleton {
|
||||
assertions = lib.singleton {
|
||||
assertion = cfg.driSupport32Bit -> pkgs.stdenv.isx86_64;
|
||||
message = "Option driSupport32Bit only makes sense on a 64-bit system.";
|
||||
};
|
||||
|
@ -152,7 +152,7 @@ in
|
||||
# default root password is empty.
|
||||
services.openssh.enable = true;
|
||||
|
||||
jobs.openssh.startOn = pkgs.lib.mkOverride 50 "";
|
||||
jobs.openssh.startOn = lib.mkOverride 50 "";
|
||||
|
||||
boot.loader.grub.enable = false;
|
||||
boot.loader.generationsDir.enable = false;
|
||||
|
@ -109,7 +109,7 @@ in
|
||||
# not be started by default on the installation CD because the
|
||||
# default root password is empty.
|
||||
services.openssh.enable = true;
|
||||
jobs.openssh.startOn = pkgs.lib.mkOverride 50 "";
|
||||
jobs.openssh.startOn = lib.mkOverride 50 "";
|
||||
|
||||
# To be able to use the systemTarball to catch troubles.
|
||||
boot.crashDump = {
|
||||
|
@ -165,7 +165,7 @@ in
|
||||
# not be started by default on the installation CD because the
|
||||
# default root password is empty.
|
||||
services.openssh.enable = true;
|
||||
jobs.openssh.startOn = pkgs.lib.mkOverride 50 "";
|
||||
jobs.openssh.startOn = lib.mkOverride 50 "";
|
||||
|
||||
# cpufrequtils fails to build on non-pc
|
||||
powerManagement.enable = false;
|
||||
|
@ -1,7 +1,7 @@
|
||||
# This module generates nixos-install, nixos-rebuild,
|
||||
# nixos-generate-config, etc.
|
||||
|
||||
{ config, pkgs, modulesPath, ... }:
|
||||
{ config, pkgs, modulesPath, lib, ... }:
|
||||
|
||||
let
|
||||
|
||||
@ -65,7 +65,7 @@ let
|
||||
test -e "$out/chrome/content/jquery-1.5.2.js" ||
|
||||
cp -f "$jquery" "$out/chrome/content/jquery-1.5.2.js"
|
||||
'';
|
||||
gui = pkgs.lib.cleanSource "${modulesPath}/../gui";
|
||||
gui = lib.cleanSource "${modulesPath}/../gui";
|
||||
jquery = pkgs.fetchurl {
|
||||
url = http://code.jquery.com/jquery-1.5.2.min.js;
|
||||
sha256 = "8f0a19ee8c606b35a10904951e0a27da1896eafe33c6e88cb7bcbe455f05a24a";
|
||||
|
@ -1,19 +1,19 @@
|
||||
# This module defines the global list of uids and gids. We keep a
|
||||
# central list to prevent id collisions.
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
options = {
|
||||
|
||||
ids.uids = pkgs.lib.mkOption {
|
||||
ids.uids = lib.mkOption {
|
||||
internal = true;
|
||||
description = ''
|
||||
The user IDs used in NixOS.
|
||||
'';
|
||||
};
|
||||
|
||||
ids.gids = pkgs.lib.mkOption {
|
||||
ids.gids = lib.mkOption {
|
||||
internal = true;
|
||||
description = ''
|
||||
The group IDs used in NixOS.
|
||||
@ -135,6 +135,7 @@
|
||||
influxdb = 125;
|
||||
nsd = 126;
|
||||
gitolite = 127;
|
||||
znc = 128;
|
||||
|
||||
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
|
||||
|
||||
@ -243,6 +244,7 @@
|
||||
teamspeak = 124;
|
||||
influxdb = 125;
|
||||
nsd = 126;
|
||||
znc = 128;
|
||||
|
||||
# When adding a gid, make sure it doesn't match an existing uid. And don't use gids above 399!
|
||||
|
||||
|
@ -1,11 +1,11 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, lib, ... }:
|
||||
|
||||
{
|
||||
options = {
|
||||
lib = pkgs.lib.mkOption {
|
||||
lib = lib.mkOption {
|
||||
default = {};
|
||||
|
||||
type = pkgs.lib.types.attrsOf pkgs.lib.types.attrs;
|
||||
type = lib.types.attrsOf lib.types.attrs;
|
||||
|
||||
description = ''
|
||||
This option allows modules to define helper functions, constants, etc.
|
||||
|
@ -1,11 +1,11 @@
|
||||
# This module allows you to export something from configuration
|
||||
# Use case: export kernel source expression for ease of configuring
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
{ config, lib, ... }:
|
||||
|
||||
{
|
||||
options = {
|
||||
passthru = pkgs.lib.mkOption {
|
||||
passthru = lib.mkOption {
|
||||
visible = false;
|
||||
description = ''
|
||||
This attribute set will be exported as a system attribute.
|
||||
|
@ -237,6 +237,7 @@
|
||||
./services/networking/wicd.nix
|
||||
./services/networking/wpa_supplicant.nix
|
||||
./services/networking/xinetd.nix
|
||||
./services/networking/znc.nix
|
||||
./services/printing/cupsd.nix
|
||||
./services/scheduling/atd.nix
|
||||
./services/scheduling/cron.nix
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, lib, ... }:
|
||||
|
||||
let
|
||||
inherit (pkgs.lib) mkOption mkIf;
|
||||
inherit (lib) mkOption mkIf;
|
||||
cfg = config.environment.blcr;
|
||||
blcrPkg = config.boot.kernelPackages.blcr;
|
||||
in
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, lib, ... }:
|
||||
|
||||
let
|
||||
inherit (pkgs.lib) mkOption mkIf types;
|
||||
inherit (lib) mkOption mkIf types;
|
||||
cfg = config.programs.screen;
|
||||
in
|
||||
|
||||
|
@ -40,7 +40,7 @@ in
|
||||
|
||||
options = {
|
||||
|
||||
users.defaultUserShell = pkgs.lib.mkOption {
|
||||
users.defaultUserShell = lib.mkOption {
|
||||
description = ''
|
||||
This option defines the default shell assigned to user
|
||||
accounts. This must not be a store path, since the path is
|
||||
@ -60,7 +60,7 @@ in
|
||||
config = {
|
||||
|
||||
environment.systemPackages =
|
||||
pkgs.lib.optional config.users.mutableUsers pkgs.shadow;
|
||||
lib.optional config.users.mutableUsers pkgs.shadow;
|
||||
|
||||
environment.etc =
|
||||
[ { # /etc/login.defs: global configuration for pwdutils. You
|
||||
|
@ -14,6 +14,7 @@ let virtualbox = config.boot.kernelPackages.virtualbox; in
|
||||
services.udev.extraRules =
|
||||
''
|
||||
KERNEL=="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0660", TAG+="systemd"
|
||||
KERNEL=="vboxdrvu", OWNER="root", GROUP="root", MODE="0666", TAG+="systemd"
|
||||
KERNEL=="vboxnetctl", OWNER="root", GROUP="root", MODE="0600", TAG+="systemd"
|
||||
SUBSYSTEM=="usb_device", ACTION=="add", RUN+="${virtualbox}/libexec/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass}"
|
||||
SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", RUN+="${virtualbox}/libexec/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass}"
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
with pkgs;
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
|
@ -73,7 +73,7 @@ in
|
||||
touch ${stateDir}/sitecopy.secrets
|
||||
chown root ${stateDir}/sitecopy.secrets
|
||||
|
||||
${pkgs.lib.concatStrings (map ( b: ''
|
||||
${lib.concatStrings (map ( b: ''
|
||||
unset secrets
|
||||
unset secret
|
||||
secrets=`grep '^${b.server}' ${stateDir}/sitecopy.secrets | head -1`
|
||||
|
@ -85,7 +85,7 @@ in
|
||||
Defines how users authenticate themselves to the server. By
|
||||
default, "trust" access to local users will always be granted
|
||||
along with any other custom options. If you do not want this,
|
||||
set this option using "pkgs.lib.mkForce" to override this
|
||||
set this option using "lib.mkForce" to override this
|
||||
behaviour.
|
||||
'';
|
||||
};
|
||||
|
@ -1,8 +1,8 @@
|
||||
# GNOME Documents daemon.
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
gnome3 = config.environment.gnome3.packageSet;
|
||||
|
@ -1,8 +1,8 @@
|
||||
# GNOME Keyring daemon.
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
gnome3 = config.environment.gnome3.packageSet;
|
||||
|
@ -1,8 +1,8 @@
|
||||
# GNOME Online Accounts daemon.
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
gnome3 = config.environment.gnome3.packageSet;
|
||||
|
@ -1,8 +1,8 @@
|
||||
# GNOME Online Miners daemon.
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
gnome3 = config.environment.gnome3.packageSet;
|
||||
|
@ -1,8 +1,8 @@
|
||||
# GNOME User Share daemon.
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
gnome3 = config.environment.gnome3.packageSet;
|
||||
|
@ -1,8 +1,8 @@
|
||||
# gvfs backends
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
{ config, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
gnome3 = config.environment.gnome3.packageSet;
|
||||
|
@ -1,8 +1,8 @@
|
||||
# Seahorse daemon.
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
gnome3 = config.environment.gnome3.packageSet;
|
||||
|
@ -1,8 +1,8 @@
|
||||
# Tracker daemon.
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
gnome3 = config.environment.gnome3.packageSet;
|
||||
|
@ -16,7 +16,7 @@ let
|
||||
echo "event=${event.event}" > $fn
|
||||
echo "action=${pkgs.writeScript "${event.name}.sh" event.action}" >> $fn
|
||||
'';
|
||||
in pkgs.lib.concatMapStrings f events
|
||||
in lib.concatMapStrings f events
|
||||
}
|
||||
'';
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
|
||||
@ -6,9 +6,9 @@
|
||||
|
||||
options = {
|
||||
|
||||
hardware.amdHybridGraphics.disable = pkgs.lib.mkOption {
|
||||
hardware.amdHybridGraphics.disable = lib.mkOption {
|
||||
default = false;
|
||||
type = pkgs.lib.types.bool;
|
||||
type = lib.types.bool;
|
||||
description = ''
|
||||
Completely disable the AMD graphics card and use the
|
||||
integrated graphics processor instead.
|
||||
@ -20,7 +20,7 @@
|
||||
|
||||
###### implementation
|
||||
|
||||
config = pkgs.lib.mkIf config.hardware.amdHybridGraphics.disable {
|
||||
config = lib.mkIf config.hardware.amdHybridGraphics.disable {
|
||||
systemd.services."amd-hybrid-graphics" = {
|
||||
path = [ pkgs.bash ];
|
||||
description = "Disable AMD Card";
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let kernel = config.boot.kernelPackages; in
|
||||
|
||||
@ -8,9 +8,9 @@ let kernel = config.boot.kernelPackages; in
|
||||
|
||||
options = {
|
||||
|
||||
hardware.nvidiaOptimus.disable = pkgs.lib.mkOption {
|
||||
hardware.nvidiaOptimus.disable = lib.mkOption {
|
||||
default = false;
|
||||
type = pkgs.lib.types.bool;
|
||||
type = lib.types.bool;
|
||||
description = ''
|
||||
Completely disable the NVIDIA graphics card and use the
|
||||
integrated graphics processor instead.
|
||||
@ -22,7 +22,7 @@ let kernel = config.boot.kernelPackages; in
|
||||
|
||||
###### implementation
|
||||
|
||||
config = pkgs.lib.mkIf config.hardware.nvidiaOptimus.disable {
|
||||
config = lib.mkIf config.hardware.nvidiaOptimus.disable {
|
||||
boot.blacklistedKernelModules = ["nouveau" "nvidia" "nvidiafb"];
|
||||
boot.kernelModules = [ "bbswitch" ];
|
||||
boot.extraModulePackages = [ kernel.bbswitch ];
|
||||
|
@ -1,9 +1,9 @@
|
||||
# Monit system watcher
|
||||
# http://mmonit.org/monit/
|
||||
|
||||
{config, pkgs, ...}:
|
||||
{config, pkgs, lib, ...}:
|
||||
|
||||
let inherit (pkgs.lib) mkOption mkIf;
|
||||
let inherit (lib) mkOption mkIf;
|
||||
in
|
||||
|
||||
{
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
let
|
||||
inherit (pkgs.lib) mkOption mkEnableOption mkIf mkMerge types optionalAttrs optional;
|
||||
inherit (lib) mkOption mkEnableOption mkIf mkMerge types optionalAttrs optional;
|
||||
|
||||
cfg = config.services.uptime;
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
inherit (pkgs.lib) mkOption mkIf;
|
||||
inherit (lib) mkOption mkIf;
|
||||
|
||||
cfg = config.services.openafsClient;
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
@ -136,4 +136,4 @@ in
|
||||
|
||||
networking.firewall.allowedTCPPorts = [ cfg.port ];
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
with pkgs;
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.networking.connman;
|
||||
|
@ -1,8 +1,8 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
|
||||
inherit (pkgs.lib) mkOption mkIf singleton;
|
||||
inherit (lib) mkOption mkIf singleton;
|
||||
|
||||
inherit (pkgs) ddclient;
|
||||
|
||||
|
@ -18,7 +18,7 @@ let
|
||||
|
||||
${cfg.extraConfig}
|
||||
|
||||
${pkgs.lib.concatMapStrings
|
||||
${lib.concatMapStrings
|
||||
(machine: ''
|
||||
host ${machine.hostName} {
|
||||
hardware ethernet ${machine.ethernetAddress};
|
||||
|
@ -1,9 +1,9 @@
|
||||
# GNU Virtual Private Ethernet
|
||||
|
||||
{config, pkgs, ...}:
|
||||
{config, pkgs, lib, ...}:
|
||||
|
||||
let
|
||||
inherit (pkgs.lib) mkOption mkIf;
|
||||
inherit (lib) mkOption mkIf;
|
||||
|
||||
cfg = config.services.gvpe;
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
with pkgs;
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.networking.networkmanager;
|
||||
@ -151,7 +151,7 @@ in {
|
||||
{ source = "${networkmanager_pptp}/etc/NetworkManager/VPN/nm-pptp-service.name";
|
||||
target = "NetworkManager/VPN/nm-pptp-service.name";
|
||||
}
|
||||
] ++ pkgs.lib.optional (cfg.appendNameservers == [] || cfg.insertNameservers == [])
|
||||
] ++ optional (cfg.appendNameservers == [] || cfg.insertNameservers == [])
|
||||
{ source = overrideNameserversScript;
|
||||
target = "NetworkManager/dispatcher.d/02overridedns";
|
||||
};
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
let
|
||||
cfg = config.services.notbit;
|
||||
varDir = "/var/lib/notbit";
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.nsd;
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
ts3 = pkgs.teamspeak_server;
|
||||
|
294
nixos/modules/services/networking/znc.nix
Normal file
294
nixos/modules/services/networking/znc.nix
Normal file
@ -0,0 +1,294 @@
|
||||
{ config, lib, pkgs, ...}:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.znc;
|
||||
|
||||
defaultUser = "znc"; # Default user to own process.
|
||||
|
||||
# Default user and pass:
|
||||
# un=znc
|
||||
# pw=nixospass
|
||||
|
||||
defaultUserName = "znc";
|
||||
defaultPassBlock = "
|
||||
<Pass password>
|
||||
Method = sha256
|
||||
Hash = e2ce303c7ea75c571d80d8540a8699b46535be6a085be3414947d638e48d9e93
|
||||
Salt = l5Xryew4g*!oa(ECfX2o
|
||||
</Pass>
|
||||
";
|
||||
|
||||
confOptions = { ... }: {
|
||||
options = {
|
||||
modules = mkOption {
|
||||
type = types.listOf types.string;
|
||||
default = [ "partyline" "webadmin" "adminlog" "log" ];
|
||||
example = [ "partyline" "webadmin" "adminlog" "log" ];
|
||||
description = ''
|
||||
A list of modules to include in the `znc.conf` file.
|
||||
'';
|
||||
};
|
||||
|
||||
userName = mkOption {
|
||||
default = defaultUserName;
|
||||
example = "johntron";
|
||||
type = types.string;
|
||||
description = ''
|
||||
The user name to use when generating the `znc.conf` file.
|
||||
This is the user name used by the user logging into the ZNC web admin.
|
||||
'';
|
||||
};
|
||||
|
||||
nick = mkOption {
|
||||
default = "znc-user";
|
||||
example = "john";
|
||||
type = types.string;
|
||||
description = ''
|
||||
The IRC nick to use when generating the `znc.conf` file.
|
||||
'';
|
||||
};
|
||||
|
||||
passBlock = mkOption {
|
||||
default = defaultPassBlock;
|
||||
example = "Must be the block generated by the `znc --makepass` command.";
|
||||
type = types.string;
|
||||
description = ''
|
||||
The pass block to use when generating the `znc.conf` file.
|
||||
This is the password used by the user logging into the ZNC web admin.
|
||||
This is the block generated by the `znc --makepass` command.
|
||||
!!! If not specified, please change this after starting the service. !!!
|
||||
'';
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
default = "5000";
|
||||
example = "5000";
|
||||
type = types.string;
|
||||
description = ''
|
||||
Specifies the port on which to listen.
|
||||
'';
|
||||
};
|
||||
|
||||
useSSL = mkOption {
|
||||
default = true;
|
||||
example = true;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
Indicates whether the ZNC server should use SSL when listening on the specified port.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
# Keep znc.conf in nix store, then symlink or copy into `dataDir`, depending on `mutable`.
|
||||
mkZncConf = confOpts: ''
|
||||
// Also check http://en.znc.in/wiki/Configuration
|
||||
|
||||
AnonIPLimit = 10
|
||||
ConnectDelay = 5
|
||||
# Add `LoadModule = x` for each module...
|
||||
${concatMapStrings (n: "LoadModule = ${n}\n") confOpts.modules}
|
||||
MaxBufferSize = 500
|
||||
ProtectWebSessions = true
|
||||
SSLCertFile = ${cfg.dataDir}/znc.pem
|
||||
ServerThrottle = 30
|
||||
Skin = dark-clouds
|
||||
StatusPrefix = *
|
||||
Version = 1.2
|
||||
|
||||
<Listener listener0>
|
||||
AllowIRC = true
|
||||
AllowWeb = true
|
||||
IPv4 = true
|
||||
IPv6 = false
|
||||
Port = ${if confOpts.useSSL then "+" else ""}${confOpts.port}
|
||||
SSL = ${if confOpts.useSSL then "true" else "false"}
|
||||
</Listener>
|
||||
|
||||
<User ${confOpts.userName}>
|
||||
Admin = true
|
||||
Allow = *
|
||||
AltNick = ${confOpts.nick}_
|
||||
AppendTimestamp = false
|
||||
AutoClearChanBuffer = false
|
||||
Buffer = 150
|
||||
ChanModes = +stn
|
||||
DenyLoadMod = false
|
||||
DenySetBindHost = false
|
||||
Ident = ident
|
||||
JoinTries = 10
|
||||
MaxJoins = 0
|
||||
MaxNetworks = 1
|
||||
MultiClients = true
|
||||
Nick = ${confOpts.nick}
|
||||
PrependTimestamp = true
|
||||
QuitMsg = Quit
|
||||
RealName = ${confOpts.nick}
|
||||
TimestampFormat = [%H:%M:%S]
|
||||
|
||||
${confOpts.passBlock}
|
||||
</User>
|
||||
'';
|
||||
|
||||
zncConfFile = pkgs.writeTextFile {
|
||||
name = "znc.conf";
|
||||
text = if cfg.zncConf != ""
|
||||
then cfg.zncConf
|
||||
else mkZncConf cfg.confOptions;
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
###### Interface
|
||||
|
||||
options = {
|
||||
services.znc = {
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
example = true;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
Enable a ZNC service for a user.
|
||||
'';
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
default = "znc";
|
||||
example = "john";
|
||||
type = types.string;
|
||||
description = ''
|
||||
The name of an existing user account to use to own the ZNC server process.
|
||||
If not specified, a default user will be created to own the process.
|
||||
'';
|
||||
};
|
||||
|
||||
dataDir = mkOption {
|
||||
default = "/home/${cfg.user}/.znc";
|
||||
example = "/home/john/.znc";
|
||||
type = types.string;
|
||||
description = ''
|
||||
The data directory. Used for configuration files and modules.
|
||||
'';
|
||||
};
|
||||
|
||||
zncConf = mkOption {
|
||||
default = "";
|
||||
example = "See: http://wiki.znc.in/Configuration";
|
||||
type = types.string;
|
||||
description = ''
|
||||
The contents of the `znc.conf` file to use when creating it.
|
||||
If specified, `confOptions` will be ignored, and this value, as-is, will be used.
|
||||
If left empty, a conf file with default values will be used.
|
||||
Recommended to generate with `znc --makeconf` command.
|
||||
'';
|
||||
};
|
||||
|
||||
confOptions = mkOption {
|
||||
default = {};
|
||||
example = {
|
||||
modules = [ "log" ];
|
||||
userName = "john";
|
||||
nick = "johntron";
|
||||
};
|
||||
type = types.optionSet;
|
||||
description = ''
|
||||
Values to use when creating a `znc.conf` file.
|
||||
'';
|
||||
options = confOptions;
|
||||
};
|
||||
|
||||
mutable = mkOption {
|
||||
default = false;
|
||||
example = true;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
Indicates whether to allow the contents of the `dataDir` directory to be changed
|
||||
by the user at run-time.
|
||||
If true, modifications to the ZNC configuration after its initial creation are not
|
||||
overwritten by a NixOS system rebuild.
|
||||
If false, the ZNC configuration is rebuilt by every system rebuild.
|
||||
If the user wants to manage the ZNC service using the web admin interface, this value
|
||||
should be set to true.
|
||||
'';
|
||||
};
|
||||
|
||||
extraFlags = mkOption {
|
||||
default = "";
|
||||
example = "--debug";
|
||||
type = types.string;
|
||||
description = ''
|
||||
Extra flags to use when executing znc command.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
###### Implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
systemd.services."znc-${cfg.user}" = {
|
||||
description = "ZNC Server of ${cfg.user}.";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network.service" ];
|
||||
path = [ pkgs.znc ];
|
||||
serviceConfig = {
|
||||
User = "${cfg.user}";
|
||||
Restart = "always";
|
||||
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
|
||||
ExecStop = "${pkgs.coreutils}/bin/kill -INT $MAINPID";
|
||||
};
|
||||
preStart = ''
|
||||
${pkgs.coreutils}/bin/mkdir -p ${cfg.dataDir}
|
||||
${pkgs.coreutils}/bin/chown ${cfg.user} ${cfg.dataDir} -R
|
||||
${pkgs.coreutils}/bin/mkdir -p ${cfg.dataDir}/configs
|
||||
|
||||
# If mutable, regenerate conf file every time.
|
||||
${optionalString (!cfg.mutable) ''
|
||||
${pkgs.coreutils}/echo "znc-${cfg.user} is set to be system-managed. Now deleting old znc.conf file to be regenerated."
|
||||
${pkgs.coreutils}/rm -f ${cfg.dataDir}/configs/znc.conf
|
||||
''}
|
||||
|
||||
# Ensure essential files exist.
|
||||
if [[ ! -f ${cfg.dataDir}/configs/znc.conf ]]; then
|
||||
${pkgs.coreutils}/bin/echo "No znc.conf file found in ${cfg.dataDir}. Creating one now."
|
||||
${if (!cfg.mutable)
|
||||
then "${pkgs.coreutils}/bin/ln --force -s ${zncConfFile} ${cfg.dataDir}/configs/znc.conf"
|
||||
else ''
|
||||
${pkgs.coreutils}/bin/cp --no-clobber ${zncConfFile} ${cfg.dataDir}/configs/znc.conf
|
||||
${pkgs.coreutils}/bin/chmod u+rw ${cfg.dataDir}/configs/znc.conf
|
||||
${pkgs.coreutils}/bin/chown ${cfg.user} ${cfg.dataDir}/configs/znc.conf
|
||||
''}
|
||||
fi
|
||||
|
||||
if [[ ! -f ${cfg.dataDir}/znc.pem ]]; then
|
||||
${pkgs.coreutils}/bin/echo "No znc.pem file found in ${cfg.dataDir}. Creating one now."
|
||||
${pkgs.znc}/bin/znc --makepem
|
||||
fi
|
||||
'';
|
||||
script = "${pkgs.znc}/bin/znc --foreground --datadir ${cfg.dataDir} ${cfg.extraFlags}";
|
||||
};
|
||||
|
||||
users.extraUsers = optional (cfg.user == defaultUser)
|
||||
{ name = defaultUser;
|
||||
description = "ZNC server daemon owner";
|
||||
group = defaultUser;
|
||||
uid = config.ids.uids.znc;
|
||||
createHome = true;
|
||||
createUser = true;
|
||||
};
|
||||
|
||||
users.extraGroups = optional (cfg.user == defaultUser)
|
||||
{ name = defaultUser;
|
||||
gid = config.ids.gids.znc;
|
||||
members = [ defaultUser ];
|
||||
};
|
||||
|
||||
};
|
||||
}
|
@ -15,7 +15,7 @@ let
|
||||
MAILTO="${config.services.cron.mailto}"
|
||||
''}
|
||||
NIX_CONF_DIR=/etc/nix
|
||||
${pkgs.lib.concatStrings (map (job: job + "\n") config.services.cron.systemCronJobs)}
|
||||
${lib.concatStrings (map (job: job + "\n") config.services.cron.systemCronJobs)}
|
||||
'';
|
||||
|
||||
# Vixie cron requires build-time configuration for the sendmail path.
|
||||
|
@ -17,7 +17,7 @@ let
|
||||
MAILTO="${config.services.cron.mailto}"
|
||||
''}
|
||||
NIX_CONF_DIR=/etc/nix
|
||||
${pkgs.lib.concatStrings (map (job: job + "\n") config.services.cron.systemCronJobs)}
|
||||
${lib.concatStrings (map (job: job + "\n") config.services.cron.systemCronJobs)}
|
||||
'';
|
||||
|
||||
allowdeny = target: users:
|
||||
|
@ -1,4 +1,4 @@
|
||||
{pkgs, config, ...}:
|
||||
{lib, config, ...}:
|
||||
|
||||
let kernel = config.boot.kernelPackages;
|
||||
in
|
||||
@ -9,9 +9,9 @@ in
|
||||
|
||||
options = {
|
||||
|
||||
services.frandom.enable = pkgs.lib.mkOption {
|
||||
services.frandom.enable = lib.mkOption {
|
||||
default = false;
|
||||
type = pkgs.lib.types.bool;
|
||||
type = lib.types.bool;
|
||||
description = ''
|
||||
enable the /dev/frandom device (a very fast random number generator)
|
||||
'';
|
||||
@ -22,7 +22,7 @@ in
|
||||
|
||||
###### implementation
|
||||
|
||||
config = pkgs.lib.mkIf config.services.frandom.enable {
|
||||
config = lib.mkIf config.services.frandom.enable {
|
||||
boot.kernelModules = [ "frandom" ];
|
||||
boot.extraModulePackages = [ kernel.frandom ];
|
||||
services.udev.packages = [ kernel.frandom ];
|
||||
|
@ -1,8 +1,8 @@
|
||||
{pkgs, config, ...}:
|
||||
{pkgs, config, lib, ...}:
|
||||
|
||||
let
|
||||
|
||||
inherit (pkgs.lib) mkOption mkIf singleton;
|
||||
inherit (lib) mkOption mkIf singleton;
|
||||
|
||||
inherit (pkgs) heimdal;
|
||||
|
||||
@ -36,7 +36,7 @@ in
|
||||
environment.systemPackages = [ heimdal ];
|
||||
|
||||
services.xinetd.enable = true;
|
||||
services.xinetd.services = pkgs.lib.singleton
|
||||
services.xinetd.services = lib.singleton
|
||||
{ name = "kerberos-adm";
|
||||
flags = "REUSE NAMEINARGS";
|
||||
protocol = "tcp";
|
||||
|
@ -7,7 +7,7 @@ let
|
||||
nssModulesPath = config.system.nssModules.path;
|
||||
cfg = config.services.nscd;
|
||||
|
||||
inherit (pkgs.lib) singleton;
|
||||
inherit (lib) singleton;
|
||||
|
||||
cfgFile = pkgs.writeText "nscd.conf" cfg.config;
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
{pkgs, config, ...}:
|
||||
{pkgs, config, lib, ...}:
|
||||
|
||||
let
|
||||
|
||||
inherit (pkgs.lib) mkOption mkIf singleton;
|
||||
inherit (lib) mkOption mkIf singleton;
|
||||
|
||||
inherit (pkgs) uptimed;
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
let
|
||||
inherit (pkgs.lib) mkOption types mkIf optionalString;
|
||||
inherit (lib) mkOption types mkIf optionalString;
|
||||
|
||||
cfg = config.services.kmscon;
|
||||
|
||||
|
@ -72,11 +72,11 @@ let
|
||||
|
||||
# Unpack Mediawiki and put the config file in its root directory.
|
||||
mediawikiRoot = pkgs.stdenv.mkDerivation rec {
|
||||
name= "mediawiki-1.20.8";
|
||||
name= "mediawiki-1.23.1";
|
||||
|
||||
src = pkgs.fetchurl {
|
||||
url = "http://download.wikimedia.org/mediawiki/1.20/${name}.tar.gz";
|
||||
sha256 = "0yfmh5vnfbgpvicfqh7nh4hwdk4qbc6gfniv02vchkg5al0nn7ag";
|
||||
url = "http://download.wikimedia.org/mediawiki/1.23/${name}.tar.gz";
|
||||
sha256 = "07z5j8d988cdg4ml4n0vs9fwmj0p594ibbqdid16faxwqm52dkhl";
|
||||
};
|
||||
|
||||
skins = config.skins;
|
||||
@ -93,9 +93,10 @@ let
|
||||
ensureDir $out
|
||||
cp -r * $out
|
||||
cp ${mediawikiConfig} $out/LocalSettings.php
|
||||
sed -i 's|/bin/bash|${pkgs.stdenv.shell}|' \
|
||||
$out/maintenance/fuzz-tester.php \
|
||||
$out/bin/ulimit.sh \
|
||||
sed -i \
|
||||
-e 's|/bin/bash|${pkgs.bash}/bin/bash|g' \
|
||||
-e 's|/usr/bin/timeout|${pkgs.coreutils}/bin/timeout|g' \
|
||||
$out/includes/limit.sh \
|
||||
$out/includes/GlobalFunctions.php
|
||||
'';
|
||||
};
|
||||
|
@ -1,8 +1,8 @@
|
||||
{ config, pkgs, serverInfo, ... }:
|
||||
{ config, pkgs, serverInfo, lib, ... }:
|
||||
|
||||
let
|
||||
inherit (pkgs) mercurial;
|
||||
inherit (pkgs.lib) mkOption;
|
||||
inherit (lib) mkOption;
|
||||
|
||||
urlPrefix = config.urlPrefix;
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, pkgs, serverInfo, ... }:
|
||||
{ config, pkgs, serverInfo, lib, ... }:
|
||||
|
||||
let
|
||||
extraWorkersProperties = pkgs.lib.optionalString (config ? extraWorkersProperties) config.extraWorkersProperties;
|
||||
extraWorkersProperties = lib.optionalString (config ? extraWorkersProperties) config.extraWorkersProperties;
|
||||
|
||||
workersProperties = pkgs.writeText "workers.properties" ''
|
||||
# Define list of workers that will be used
|
||||
|
@ -1,7 +1,7 @@
|
||||
{pkgs, config, ...}:
|
||||
{lib, pkgs, config, ...}:
|
||||
|
||||
let
|
||||
inherit (pkgs.lib) mkOption mkIf;
|
||||
inherit (lib) mkOption mkIf;
|
||||
cfg = config.services.xserver.windowManager.openbox;
|
||||
in
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
{pkgs, config, ...}:
|
||||
{pkgs, lib, config, ...}:
|
||||
|
||||
let
|
||||
inherit (pkgs.lib) mkOption mkIf optionals literalExample;
|
||||
inherit (lib) mkOption mkIf optionals literalExample;
|
||||
cfg = config.services.xserver.windowManager.xmonad;
|
||||
xmonadEnv = cfg.haskellPackages.ghcWithPackages(self: [
|
||||
self.xmonad
|
||||
@ -48,7 +48,7 @@ in
|
||||
enableContribAndExtras = mkOption {
|
||||
default = false;
|
||||
example = true;
|
||||
type = pkgs.lib.types.bool;
|
||||
type = lib.types.bool;
|
||||
description = "Enable xmonad-{contrib,extras} in Xmonad.";
|
||||
};
|
||||
};
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ config, pkgs, modulesPath, ... }:
|
||||
{ config, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
fileSystems = attrValues config.fileSystems ++ config.swapDevices;
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with pkgs.lib;
|
||||
with lib;
|
||||
|
||||
let
|
||||
inInitrd = any (fs: fs == "f2fs") config.boot.initrd.supportedFilesystems;
|
||||
|
@ -1,8 +1,8 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
config = pkgs.lib.mkMerge [
|
||||
(pkgs.lib.mkIf (pkgs.lib.any (fs: fs == "unionfs-fuse") config.boot.initrd.supportedFilesystems) {
|
||||
config = lib.mkMerge [
|
||||
(lib.mkIf (lib.any (fs: fs == "unionfs-fuse") config.boot.initrd.supportedFilesystems) {
|
||||
boot.initrd.kernelModules = [ "fuse" ];
|
||||
|
||||
boot.initrd.extraUtilsCommands = ''
|
||||
@ -17,7 +17,7 @@
|
||||
ln -s $(which umount) /nix/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-${pkgs.utillinux.name}/bin
|
||||
'';
|
||||
})
|
||||
(pkgs.lib.mkIf (pkgs.lib.any (fs: fs == "unionfs-fuse") config.boot.supportedFilesystems) {
|
||||
(lib.mkIf (lib.any (fs: fs == "unionfs-fuse") config.boot.supportedFilesystems) {
|
||||
system.fsPackages = [ pkgs.unionfs-fuse ];
|
||||
})
|
||||
];
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
configfile = builtins.storePath (builtins.toFile "config" (pkgs.lib.concatStringsSep "\n"
|
||||
configfile = builtins.storePath (builtins.toFile "config" (lib.concatStringsSep "\n"
|
||||
(map (builtins.getAttr "configLine") config.system.requiredKernelConfig))
|
||||
);
|
||||
|
||||
|
@ -11,7 +11,6 @@ let
|
||||
|
||||
in
|
||||
|
||||
optionalAttrs (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) # ugly...
|
||||
{
|
||||
|
||||
###### interface
|
||||
@ -33,6 +32,10 @@ optionalAttrs (pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64) # ugly...
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
assertions = [ {
|
||||
assertion = pkgs.stdenv.isi686 || pkgs.stdenv.isx86_64;
|
||||
message = "Virtualbox not currently supported on ${pkgs.stdenv.system}";
|
||||
} ];
|
||||
|
||||
environment.systemPackages = [ kernel.virtualboxGuestAdditions ];
|
||||
|
||||
|
@ -370,7 +370,7 @@ in {
|
||||
# Rebuild the CD configuration with a little modification.
|
||||
rebuildCD = makeTest
|
||||
{ inherit iso;
|
||||
name = "rebuild-CD";
|
||||
name = "rebuild-cd";
|
||||
nodes = { };
|
||||
testScript =
|
||||
''
|
||||
|
@ -30,21 +30,21 @@ in
|
||||
$client1->execute("mumble mumble://client1\@server/test &");
|
||||
$client2->execute("mumble mumble://client2\@server/test &");
|
||||
|
||||
$client1->waitForWindow(qr/Mumble/);
|
||||
$client2->waitForWindow(qr/Mumble/);
|
||||
$server->sleep(3); # Wait some more for the Mumble UI
|
||||
|
||||
# cancel client audio configuration
|
||||
$client1->waitForWindow(qr/Audio Tuning Wizard/);
|
||||
$client2->waitForWindow(qr/Audio Tuning Wizard/);
|
||||
$client1->sendKeys("esc");
|
||||
$client2->sendKeys("esc");
|
||||
$server->sleep(1);
|
||||
|
||||
# cancel client cert configuration
|
||||
$client1->waitForWindow(qr/Certificate Management/);
|
||||
$client2->waitForWindow(qr/Certificate Management/);
|
||||
$client1->sendKeys("esc");
|
||||
$client2->sendKeys("esc");
|
||||
$server->sleep(1);
|
||||
|
||||
# accept server certificate
|
||||
$client1->waitForWindow(qr/^Mumble$/);
|
||||
$client2->waitForWindow(qr/^Mumble$/);
|
||||
$client1->sendChars("y");
|
||||
$client2->sendChars("y");
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
import ./make-test.nix {
|
||||
name = "simple"
|
||||
name = "simple";
|
||||
|
||||
machine = { config, pkgs, ... }: { };
|
||||
|
||||
|
@ -1,12 +1,12 @@
|
||||
{stdenv, fetchurl, emacs}:
|
||||
|
||||
let version = "1.3";
|
||||
let version = "2.0";
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
name = "writegood-mode-${version}";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/bnbeckwith/writegood-mode/archive/v${version}.tar.gz";
|
||||
sha256 = "0p34rgawnqg94vk4lcw14x99rrvsd23dmbwkxz2vax5kq6l8y5yf";
|
||||
sha256 = "0wf7bj9d00ggy3xigym885a3njfr98i3aqrrawf8x6lgbfc56dgp";
|
||||
};
|
||||
|
||||
buildInputs = [ emacs ];
|
||||
|
64
pkgs/applications/inferno/default.nix
Normal file
64
pkgs/applications/inferno/default.nix
Normal file
@ -0,0 +1,64 @@
|
||||
{ fetchurl, fetchhg, stdenv, xlibs, gcc46, makeWrapper }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
# Inferno is a rolling release from a mercurial repository. For the verison number
|
||||
# of the package I'm using the mercurial commit number.
|
||||
version = "645";
|
||||
name = "inferno-${version}";
|
||||
|
||||
# The mercurial repository does not contain all the components needed for the
|
||||
# runtime system. The 'base' package contains these. For this package I download
|
||||
# the base, extract the elements required from that, and add them to the source
|
||||
# pulled from the mercurial repository.
|
||||
srcBase = fetchurl {
|
||||
url = "http://www.vitanuova.com/dist/4e/inferno-20100120.tgz";
|
||||
sha256 = "0msvy3iwl4n5k0ry0xiyysjkq0qsawmwn3hvg67hbi5y8g7f7l88";
|
||||
};
|
||||
|
||||
src = fetchhg {
|
||||
url = "https://inferno-os.googlecode.com/hg";
|
||||
rev = "7ab390b860ca";
|
||||
sha256 = "09y0iclb3yy10gw1p0182sddg64xh60q2fx4ai7lxyfb65i76qbh";
|
||||
};
|
||||
|
||||
# Fails with gcc48 due to inferno triggering an optimisation issue with floating point.
|
||||
buildInputs = [ gcc46 xlibs.libX11 xlibs.libXpm xlibs.libXext xlibs.xextproto makeWrapper ];
|
||||
|
||||
infernoWrapper = ./inferno;
|
||||
|
||||
configurePhase = ''
|
||||
tar --strip-components=1 -xvf $srcBase inferno/fonts inferno/Mkdirs inferno/empties
|
||||
sed -e 's@^ROOT=.*$@ROOT='"$out"'/share/inferno@g' -e 's@^OBJTYPE=.*$@OBJTYPE=386@g' -e 's@^SYSHOST=.*$@SYSHOST=Linux@g' -i mkconfig
|
||||
mkdir prof
|
||||
sh Mkdirs
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
export PATH=$PATH:$out/share/inferno/Linux/386/bin
|
||||
mkdir -p $out/share/inferno
|
||||
cp -r . $out/share/inferno
|
||||
./makemk.sh
|
||||
mk nuke
|
||||
mk
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mk install
|
||||
mkdir -p $out/bin
|
||||
makeWrapper $out/share/inferno/Linux/386/bin/emu $out/bin/emu \
|
||||
--suffix LD_LIBRARY_PATH ':' "${gcc46.gcc}/lib" \
|
||||
--suffix PATH ':' "$out/share/inferno/Linux/386/bin"
|
||||
makeWrapper $infernoWrapper $out/bin/inferno \
|
||||
--suffix LD_LIBRARY_PATH ':' "${gcc46.gcc}/lib" \
|
||||
--suffix PATH ':' "$out/share/inferno/Linux/386/bin" \
|
||||
--set INFERNO_ROOT "$out/share/inferno"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "A compact distributed operating system for building cross-platform distributed systems";
|
||||
homepage = "http://inferno-os.org/";
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
maintainer = [ "Chris Double <chris.double@double.co.nz>" ];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
31
pkgs/applications/inferno/inferno
Executable file
31
pkgs/applications/inferno/inferno
Executable file
@ -0,0 +1,31 @@
|
||||
#! /usr/bin/env bash
|
||||
|
||||
|
||||
export INFERNO_HOME="$HOME/.local/share/inferno"
|
||||
if [ -n "$XDG_DATA_HOME" ]
|
||||
then export INFERNO_HOME="$XDG_DATA_HOME/inferno"
|
||||
fi
|
||||
|
||||
if [ ! -d $INFERNO_HOME ]; then
|
||||
mkdir -p $INFERNO_HOME
|
||||
fi
|
||||
|
||||
if [ ! -d $INFERNO_HOME/tmp ]; then
|
||||
mkdir -p $INFERNO_HOME/tmp
|
||||
fi
|
||||
|
||||
for d in $INFERNO_HOME/{acme,appl,dis,lib,man,module,usr/inferno}; do
|
||||
if [ ! -d $d ]; then
|
||||
mkdir -p $d
|
||||
cp --no-preserve=all -r $INFERNO_ROOT/${d#$INFERNO_HOME/}/* $d/
|
||||
chmod -R +w $d
|
||||
fi
|
||||
done
|
||||
|
||||
if [ ! -d $INFERNO_HOME/usr/$USER ]; then
|
||||
mkdir -p $INFERNO_HOME/usr/$USER
|
||||
cp -r $INFERNO_ROOT/usr/inferno/* $INFERNO_HOME/usr/$USER/
|
||||
chmod -R +w $INFERNO_HOME/usr/$USER
|
||||
fi
|
||||
|
||||
exec emu "$@" /dis/sh.dis -c "bind -b -c '#U*$INFERNO_HOME/' /; /dis/sh.dis"
|
@ -6,8 +6,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "arbtt";
|
||||
version = "0.8";
|
||||
sha256 = "0anjcg8ikd3jxc5rb3k215wj7ar4kg2plv8sdr8hv64758xkc5q9";
|
||||
version = "0.8.1";
|
||||
sha256 = "1qzmqjm8pfj59h0hrm28pp6qhzz2am5xq81mirnnchsgg52wrfn0";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
|
@ -1,23 +1,25 @@
|
||||
{ stdenv, fetchurl }:
|
||||
{ stdenv, fetchgit }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "makeself-2.1.5";
|
||||
src = fetchurl {
|
||||
url = "http://megastep.org/makeself/makeself.run";
|
||||
sha256 = "0khs19xpid4ng0igrjyz3vsi6a5xyixrrrhgdxpdhd2wnf5nc9w2";
|
||||
name = "makeself-2.2.0";
|
||||
src = fetchgit {
|
||||
url = "https://github.com/megastep/makeself.git";
|
||||
rev = "b836b9281ae99abe1865608b065551da56c80719";
|
||||
sha256 = "f7c97f0f8ad8128f2f1b54383319f2cc44cbb05b60ced222784debdf326f23ad";
|
||||
};
|
||||
unpackPhase = "sh ${src}";
|
||||
installPhase = ''
|
||||
cd ${name}
|
||||
mkdir -p $out/{bin,share/{${name},man/man1}}
|
||||
mv makeself.lsm README $out/share/${name}
|
||||
mv makeself.lsm README.md $out/share/${name}
|
||||
mv makeself.sh $out/bin/makeself
|
||||
mv makeself.1 $out/share/man/man1/
|
||||
mv makeself-header.sh $out/share/${name}
|
||||
sed -e 's|HEADER=`dirname $0`/makeself-header.sh|HEADER=`dirname $0`/../share/${name}/makeself-header.sh|' -i $out/bin/makeself
|
||||
'';
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://megastep.org/makeself;
|
||||
description = "Utility to create self-extracting packages";
|
||||
license = licenses.gpl2;
|
||||
maintainer = maintainers.wmertens;
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "nc-indicators";
|
||||
version = "0.1";
|
||||
sha256 = "19amwfcbwfxcj0gr7w0vgxl427l43q3l2s3n3zsxhqwkfblxmfy5";
|
||||
version = "0.2";
|
||||
sha256 = "0z3h0d3cl0xapysq5sh1rnbp8fg8adlq0x3i4ql9xin9in29q27q";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
buildDepends = [ attoparsec gtk hflags lens pipes stm ];
|
||||
meta = {
|
||||
homepage = "https://github.com/nilcons/nc-indicators/issues";
|
||||
homepage = "https://github.com/nilcons/nc-indicators";
|
||||
description = "CPU load and memory usage indicators for i3bar";
|
||||
license = self.stdenv.lib.licenses.asl20;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
|
@ -6,8 +6,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "xmobar";
|
||||
version = "0.20.1";
|
||||
sha256 = "16jfgn6ciqxrwj6qjhbcpms7mzlbxfaxyxfxp64xvnw626xlpjvk";
|
||||
version = "0.21";
|
||||
sha256 = "1h0gsb808zm4j4kmw7fl4339wllc16ldy1ki96l8w3fvj30bcxpm";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
@ -18,7 +18,7 @@ cabal.mkDerivation (self: {
|
||||
extraLibraries = [ libXrandr wirelesstools ];
|
||||
configureFlags = "-fall_extensions";
|
||||
meta = {
|
||||
homepage = "http://projects.haskell.org/xmobar/";
|
||||
homepage = "http://xmobar.org";
|
||||
description = "A Minimalistic Text Based Status Bar";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
|
@ -1,13 +1,13 @@
|
||||
{ stdenv, fetchgit, pkgconfig, makeWrapper, libsoup, webkit, gtk3, gnutls, json_c,
|
||||
m4, glib_networking, gsettings_desktop_schemas }:
|
||||
m4, glib_networking, gsettings_desktop_schemas, dconf }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "dwb-2014-06-17";
|
||||
name = "dwb-2014-07-03";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://bitbucket.org/portix/dwb.git";
|
||||
rev = "9f4bdb9a1f8d5e45071019da4626231dfebd4d8e";
|
||||
sha256 = "1nj34w2hhw47jsmswsc1y6a09my8zdd01qxwai8dxdvisld3marm";
|
||||
rev = "6224470489eb5ba92987e01396269f8b7cd78ada";
|
||||
sha256 = "04p9frsnh1qz067cw36anvr41an789fba839svdjrdva0f2751g8";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig makeWrapper gsettings_desktop_schemas libsoup webkit gtk3 gnutls json_c m4 ];
|
||||
@ -19,7 +19,7 @@ stdenv.mkDerivation {
|
||||
|
||||
preFixup=''
|
||||
wrapProgram "$out/bin/dwb" \
|
||||
--prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" \
|
||||
--prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules:${dconf}/lib/gio/modules" \
|
||||
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share"
|
||||
wrapProgram "$out/bin/dwbem" \
|
||||
--prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules"
|
||||
|
@ -4,11 +4,11 @@
|
||||
, gsm, speex, portaudio, spandsp, libuuid
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.4.3";
|
||||
version = "0.4.11";
|
||||
name = "baresip-${version}";
|
||||
src=fetchurl {
|
||||
url = "http://www.creytiv.com/pub/baresip-${version}.tar.gz";
|
||||
sha256 = "03vpzn0c3mybnwn84ha3yci780qsjm669dwja1srj0hbrq81rbil";
|
||||
sha256 = "1ql5h9ily9jncp9w302v3b2ldx613kc60zlqv0v0ln8hsm8q6bc5";
|
||||
};
|
||||
buildInputs = [zlib openssl libre librem pkgconfig
|
||||
cairo mpg123 gstreamer gst_ffmpeg gst_plugins_base gst_plugins_bad gst_plugins_good
|
||||
@ -41,5 +41,9 @@ stdenv.mkDerivation rec {
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
maintainers = with stdenv.lib.maintainers; [raskin];
|
||||
license = with stdenv.lib.licenses; bsd3;
|
||||
inherit version;
|
||||
downloadPage = "http://www.creytiv.com/pub/";
|
||||
updateWalker = true;
|
||||
downloadURLRegexp = "/baresip-.*[.]tar[.].*";
|
||||
};
|
||||
}
|
||||
|
@ -9,12 +9,14 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "137sslbgh0326lmwihcr2ybljgq9mzsx5wnciilpx884si22wpk8";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [pkgconfig libxslt];
|
||||
nativeBuildInputs = [ pkgconfig libxslt ];
|
||||
buildInputs = [ libxml2 dbus_glib sqlite libsoup libnice telepathy_glib gnutls ];
|
||||
|
||||
configureFlags = "--with-ca-certificates=/etc/ssl/certs/ca-bundle.crt";
|
||||
|
||||
meta = {
|
||||
homepage = http://telepathy.freedesktop.org;
|
||||
description = "Jabber/XMPP connection manager for the Telepathy framework";
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
};
|
||||
}
|
||||
|
@ -1,11 +0,0 @@
|
||||
--- bip-0.8.8/src/lex.l.orig
|
||||
+++ bip-0.8.8/src/lex.l
|
||||
@@ -16,7 +16,7 @@
|
||||
int linec;
|
||||
#include "util.h"
|
||||
extern list_t *root_list;
|
||||
-void yyparse(void);
|
||||
+int yyparse(void);
|
||||
void free_conf(list_t*);
|
||||
int conf_error;
|
||||
typedef struct bip bip_t;
|
@ -2,8 +2,8 @@
|
||||
|
||||
let
|
||||
|
||||
version = "0.8.8";
|
||||
sha256 = "7ca3fb96f5ee6b76eb398d7ea45344ea24855344ced11632241a33353bba05d7";
|
||||
version = "0.8.9";
|
||||
sha256 = "0q942g9lyd8pjvqimv547n6vik5759r9npw3ws3bdj4ixxqhz59w";
|
||||
|
||||
# fetches patches from a gentoo mirror
|
||||
fetchPatch =
|
||||
@ -25,19 +25,12 @@ in stdenv.mkDerivation {
|
||||
|
||||
# includes an important security patch
|
||||
patches = map fetchPatch [
|
||||
{ file = "bip-0.8.8-configure.patch";
|
||||
sha256 = "286e169745e6cd768f0cb95bbc9589ca2bda497eb06461174549b80a459d901c";
|
||||
}
|
||||
{ file = "bip-CVE-2012-0806.patch";
|
||||
sha256 = "e47523095ee1d717c762ca0195520026c6ea2c30d8adcf434d276d42f052d506";
|
||||
}
|
||||
{ file = "bip-freenode.patch";
|
||||
sha256 = "a67e582f89cc6a32d5bb48c7e8ceb647b889808c2c8798ae3eb27d88869b892f";
|
||||
}
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
patch -p1 < ${./bip-0.8.8-yyparse.patch}
|
||||
'';
|
||||
|
||||
configureFlags = [ "--disable-pie" ];
|
||||
@ -48,5 +41,7 @@ in stdenv.mkDerivation {
|
||||
description = "An IRC proxy (bouncer)";
|
||||
homepage = http://bip.milkypond.org/;
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
downloadPage= "https://projects.duckcorp.org/projects/bip/files";
|
||||
inherit version;
|
||||
};
|
||||
}
|
||||
|
12
pkgs/applications/networking/mailreaders/mutt/mailpath.patch
Normal file
12
pkgs/applications/networking/mailreaders/mutt/mailpath.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -r 8f62001989cc configure.ac
|
||||
--- a/configure.ac Sat Feb 08 10:24:22 2014 -0800
|
||||
+++ b/configure.ac Wed Jul 02 12:34:40 2014 +0200
|
||||
@@ -473,6 +473,8 @@
|
||||
mutt_cv_mailpath=/usr/spool/mail
|
||||
elif test -d /usr/mail; then
|
||||
mutt_cv_mailpath=/usr/mail
|
||||
+ elif test -d /tmp; then
|
||||
+ mutt_cv_mailpath=/tmp
|
||||
fi])
|
||||
])
|
||||
if test "$mutt_cv_mailpath" = no; then
|
@ -4,7 +4,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "2.83";
|
||||
version = "2.84";
|
||||
in
|
||||
|
||||
with { inherit (stdenv.lib) optional optionals optionalString; };
|
||||
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.transmissionbt.com/files/transmission-${version}.tar.xz";
|
||||
sha256 = "0cqlgl6jmjw1caybz6nzh3l8z0jak1dxba01isv72zvy2r8b1qdh";
|
||||
sha256 = "1sxr1magqb5s26yvr5yhs1f7bmir8gl09niafg64lhgfnhv1kz59";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig intltool file openssl curl libevent inotifyTools ]
|
||||
|
@ -1,16 +1,16 @@
|
||||
{ cabal, ansiTerminal, filepath, HTTP, network, optparseApplicative
|
||||
, stringsearch, terminalSize, time, zlib
|
||||
, terminalSize, text, time, zlib
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "sloane";
|
||||
version = "1.8";
|
||||
sha256 = "0c30slsswfqwzi39hk6jraxz1y1a2yn8g8nyjvlnggwajx2rlm6p";
|
||||
version = "1.8.2";
|
||||
sha256 = "0kdznrvyrax1gihqxxw36jfbmjri808ii827fa71v2ijlm416hk1";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
ansiTerminal filepath HTTP network optparseApplicative stringsearch
|
||||
terminalSize time zlib
|
||||
ansiTerminal filepath HTTP network optparseApplicative terminalSize
|
||||
text time zlib
|
||||
];
|
||||
postInstall = ''
|
||||
mkdir -p $out/share/man/man1
|
||||
|
@ -3,12 +3,12 @@ mesa, libXmu, libXi, freeglut, libjpeg, libtool, wxGTK, xcbutil,
|
||||
sqlite, gtk, patchelf, libXScrnSaver, libnotify, libX11, libxcb }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "boinc-7.0.44";
|
||||
name = "boinc-7.2.42";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://boinc.berkeley.edu/boinc-v2.git";
|
||||
rev = "7c449b1fb8a681ceb27d6895751b62a2b3adf0f2";
|
||||
sha256 = "0hdramyl9nip3gadp7xiaz8ngyld15i93d8ai1nsd04bmrvdfqia";
|
||||
rev = "dd0d630882547c123ca0f8fda7a62e058d60f6a9";
|
||||
sha256 = "1zifpi3mjgaj68fba6kammp3x7z8n2x164zz6fj91xfiapnan56j";
|
||||
};
|
||||
|
||||
buildInputs = [ libtool automake autoconf m4 pkgconfig curl mesa libXmu libXi
|
||||
|
28
pkgs/applications/version-management/vcprompt/default.nix
Normal file
28
pkgs/applications/version-management/vcprompt/default.nix
Normal file
@ -0,0 +1,28 @@
|
||||
{ stdenv, fetchhg, autoconf, sqlite }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "vcprompt";
|
||||
|
||||
src = fetchhg {
|
||||
url = "http://hg.gerg.ca/vcprompt/";
|
||||
rev = "1.2.1";
|
||||
sha256 = "03xqvp6bfl98bpacrw4n82qv9cw6a4fxci802s3vrygas989v1kj";
|
||||
};
|
||||
|
||||
buildInputs = [ sqlite autoconf ];
|
||||
|
||||
preConfigure = ''
|
||||
autoconf
|
||||
makeFlags="$makeFlags PREFIX=$out"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = ''
|
||||
A little C program that prints a short string with barebones information
|
||||
about the current working directory for various version control systems
|
||||
'';
|
||||
homepage = http://hg.gerg.ca/vcprompt;
|
||||
maintainers = with maintainers; [ cstrahan ];
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
};
|
||||
}
|
@ -1,9 +1,23 @@
|
||||
{ stdenv, php, autoreconfHook }:
|
||||
{ stdenv, php, autoreconfHook, fetchurl }:
|
||||
|
||||
args: stdenv.mkDerivation (args // {
|
||||
buildInputs = [ php autoreconfHook ] ++ args.buildInputs or [];
|
||||
{ name
|
||||
, buildInputs ? []
|
||||
, makeFlags ? []
|
||||
, src ? fetchurl {
|
||||
url = "http://pecl.php.net/get/${name}.tgz";
|
||||
inherit (args) sha256;
|
||||
}
|
||||
, ...
|
||||
}@args:
|
||||
|
||||
makeFlags = [ "EXTENSION_DIR=$(out)/lib/php/extensions" ] ++ args.makeFlags or [];
|
||||
stdenv.mkDerivation (args // {
|
||||
name = "php-${name}";
|
||||
|
||||
inherit src;
|
||||
|
||||
buildInputs = [ php autoreconfHook ] ++ buildInputs;
|
||||
|
||||
makeFlags = [ "EXTENSION_DIR=$(out)/lib/php/extensions" ] ++ makeFlags;
|
||||
|
||||
autoreconfPhase = "phpize";
|
||||
})
|
||||
|
@ -2,15 +2,22 @@
|
||||
|
||||
own_dir="$(cd "$(dirname "$0")"; pwd)"
|
||||
|
||||
URL_WAS_SET=
|
||||
DL_URL_RE=
|
||||
CURRENT_URL=
|
||||
CURRENT_REV=
|
||||
PREFETCH_COMMAND=
|
||||
NEED_TO_CHOOSE_URL=1
|
||||
|
||||
url () {
|
||||
URL_WAS_SET=1
|
||||
CURRENT_URL="$1"
|
||||
}
|
||||
|
||||
dl_url_re () {
|
||||
DL_URL_RE="$1"
|
||||
}
|
||||
|
||||
version_unpack () {
|
||||
sed -re '
|
||||
s/[.]/ /g;
|
||||
@ -101,16 +108,27 @@ ensure_name () {
|
||||
|
||||
ensure_attribute_name () {
|
||||
echo "Ensuring attribute name. CURRENT_ATTRIBUTE_NAME: $CURRENT_ATTRIBUTE_NAME" >&2
|
||||
ensure_name
|
||||
[ -z "$CURRENT_ATTRIBUTE_NAME" ] && attribute_name "$CURRENT_NAME"
|
||||
echo "Resulting attribute name: $CURRENT_ATTRIBUTE_NAME"
|
||||
}
|
||||
|
||||
ensure_url () {
|
||||
echo "Ensuring starting URL. CURRENT_URL: $CURRENT_URL" >&2
|
||||
ensure_attribute_name
|
||||
[ -z "$CURRENT_URL" ] && CURRENT_URL="$(retrieve_meta downloadPage)"
|
||||
[ -z "$CURRENT_URL" ] && CURRENT_URL="$(retrieve_meta downloadpage)"
|
||||
[ -z "$CURRENT_URL" ] && CURRENT_URL="$(retrieve_meta homepage)"
|
||||
echo "Resulting URL: $CURRENT_URL"
|
||||
}
|
||||
|
||||
ensure_choice () {
|
||||
echo "Ensuring that choice is made." >&2
|
||||
echo "NEED_TO_CHOOSE_URL: [$NEED_TO_CHOOSE_URL]." >&2
|
||||
echo "CURRENT_URL: $CURRENT_URL" >&2
|
||||
[ -z "$URL_WAS_SET" ] && [ -z "$CURRENT_URL" ] && ensure_url
|
||||
[ -n "$NEED_TO_CHOOSE_URL" ] && {
|
||||
version_link '[.]tar[.]([^./])+$'
|
||||
version_link "${DL_URL_RE:-[.]tar[.]([^./])+\$}"
|
||||
unset NEED_TO_CHOOSE_URL
|
||||
}
|
||||
[ -z "$CURRENT_URL" ] && {
|
||||
@ -153,8 +171,18 @@ attribute_name () {
|
||||
echo "CURRENT_ATTRIBUTE_NAME: $CURRENT_ATTRIBUTE_NAME" >&2
|
||||
}
|
||||
|
||||
retrieve_meta () {
|
||||
nix-instantiate --eval-only '<nixpkgs>' -A "$CURRENT_ATTRIBUTE_NAME".meta."$1" | xargs
|
||||
}
|
||||
|
||||
retrieve_version () {
|
||||
PACKAGED_VERSION="$(nix-instantiate --eval-only '<nixpkgs>' -A "$CURRENT_ATTRIBUTE_NAME".meta.version | xargs)"
|
||||
PACKAGED_VERSION="$(retrieve_meta version)"
|
||||
}
|
||||
|
||||
ensure_dl_url_re () {
|
||||
echo "Ensuring DL_URL_RE. DL_URL_RE: $DL_URL_RE" >&2
|
||||
[ -z "$DL_URL_RE" ] && dl_url_re "$(retrieve_meta downloadURLRegexp)"
|
||||
echo "DL_URL_RE: $DL_URL_RE" >&2
|
||||
}
|
||||
|
||||
directory_of () {
|
||||
@ -256,10 +284,27 @@ process_config () {
|
||||
CONFIG_DIR="$(directory_of "$1")"
|
||||
CONFIG_NAME="$(basename "$1")"
|
||||
BEGIN_EXPRESSION='# Generated upstream information';
|
||||
source "$CONFIG_DIR/$CONFIG_NAME"
|
||||
ensure_name
|
||||
if [ -f "$CONFIG_DIR/$CONFIG_NAME" ] &&
|
||||
[ "${CONFIG_NAME}" = "${CONFIG_NAME%.nix}" ]; then
|
||||
source "$CONFIG_DIR/$CONFIG_NAME"
|
||||
else
|
||||
CONFIG_NAME="${CONFIG_NAME%.nix}"
|
||||
ensure_attribute_name
|
||||
[ -n "$(retrieve_meta updateWalker)" ] ||
|
||||
[ -n "$FORCE_UPDATE_WALKER" ] || {
|
||||
echo "Error: package not marked as safe for update-walker" >&2
|
||||
echo "Set FORCE_UPDATE_WALKER=1 to override" >&2
|
||||
exit 1;
|
||||
}
|
||||
[ -z "$(retrieve_meta fullRegenerate)" ] && eval "
|
||||
do_overwrite(){
|
||||
do_overwrite_just_version
|
||||
}
|
||||
"
|
||||
fi
|
||||
ensure_attribute_name
|
||||
retrieve_version
|
||||
ensure_dl_url_re
|
||||
ensure_choice
|
||||
ensure_version
|
||||
ensure_target
|
||||
|
@ -10,16 +10,16 @@ let
|
||||
buildInputs = map (n: builtins.getAttr n x)
|
||||
(builtins.attrNames (builtins.removeAttrs x helperArgNames));
|
||||
sourceInfo = rec {
|
||||
version="1.002";
|
||||
version = "1.002";
|
||||
name="anonymousPro";
|
||||
url="http://www.ms-studio.com/FontSales/AnonymousPro-${version}.zip";
|
||||
hash="86665847a51cdfb58a1e1dfd8b1ba33f183485affe50b53e3304f63d3d3552ab";
|
||||
sha256 = "1asj6lykvxh46czbal7ymy2k861zlcdqpz8x3s5bbpqwlm3mhrl6";
|
||||
};
|
||||
in
|
||||
rec {
|
||||
src = a.fetchurl {
|
||||
url = sourceInfo.url;
|
||||
sha256 = sourceInfo.hash;
|
||||
sha256 = sourceInfo.sha256;
|
||||
};
|
||||
|
||||
name = "${sourceInfo.name}-${sourceInfo.version}";
|
||||
@ -40,11 +40,11 @@ rec {
|
||||
];
|
||||
platforms = with a.lib.platforms;
|
||||
all;
|
||||
};
|
||||
passthru = {
|
||||
updateInfo = {
|
||||
downloadPage = "http://www.ms-studio.com/FontSales/anonymouspro.html";
|
||||
};
|
||||
license = with a.lib.licenses; ofl;
|
||||
hydraPlatforms = [];
|
||||
homepage = "http://www.marksimonson.com/fonts/view/anonymous-pro";
|
||||
downloadPage = "http://www.ms-studio.com/FontSales/anonymouspro.html";
|
||||
inherit (sourceInfo) version;
|
||||
};
|
||||
}) x
|
||||
|
||||
|
6
pkgs/data/fonts/anonymous-pro/default.upstream
Normal file
6
pkgs/data/fonts/anonymous-pro/default.upstream
Normal file
@ -0,0 +1,6 @@
|
||||
attribute_name anonymousPro
|
||||
url http://www.ms-studio.com/FontSales/anonymouspro.html
|
||||
version_link '/AnonymousPro-.*[.]zip$'
|
||||
do_overwrite (){
|
||||
do_overwrite_just_version
|
||||
}
|
@ -11,11 +11,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
patches = [
|
||||
./alt.patch
|
||||
( fetchurl { # CVE-2012-2738
|
||||
url = "http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-libs/"
|
||||
+ "vte/files/vte-0.28.2-limit-arguments.patch?revision=1.1";
|
||||
sha256 = "1s8agx74wa7wlv9ybd5h3dp4hzf4ddg7piyan37g2ab3fnvg4jhn";
|
||||
} )
|
||||
# CVE-2012-2738
|
||||
./vte-0.28.2-limit-arguments.patch
|
||||
];
|
||||
|
||||
buildInputs = [ intltool pkgconfig glib gtk ncurses ] ++
|
||||
|
@ -0,0 +1,40 @@
|
||||
From feeee4b5832b17641e505b7083e0d299fdae318e Mon Sep 17 00:00:00 2001
|
||||
From: Christian Persch <chpe@gnome.org>
|
||||
Date: Sat, 19 May 2012 17:36:09 +0000
|
||||
Subject: emulation: Limit integer arguments to 65535
|
||||
|
||||
To guard against malicious sequences containing excessively big numbers,
|
||||
limit all parsed numbers to 16 bit range. Doing this here in the parsing
|
||||
routine is a catch-all guard; this doesn't preclude enforcing
|
||||
more stringent limits in the handlers themselves.
|
||||
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=676090
|
||||
---
|
||||
diff --git a/src/table.c b/src/table.c
|
||||
index 140e8c8..85cf631 100644
|
||||
--- a/src/table.c
|
||||
+++ b/src/table.c
|
||||
@@ -550,7 +550,7 @@ _vte_table_extract_numbers(GValueArray **array,
|
||||
if (G_UNLIKELY (*array == NULL)) {
|
||||
*array = g_value_array_new(1);
|
||||
}
|
||||
- g_value_set_long(&value, total);
|
||||
+ g_value_set_long(&value, CLAMP (total, 0, G_MAXUSHORT));
|
||||
g_value_array_append(*array, &value);
|
||||
} while (i++ < arginfo->length);
|
||||
g_value_unset(&value);
|
||||
diff --git a/src/vteseq.c b/src/vteseq.c
|
||||
index 457c06a..46def5b 100644
|
||||
--- a/src/vteseq.c
|
||||
+++ b/src/vteseq.c
|
||||
@@ -557,7 +557,7 @@ vte_sequence_handler_multiple(VteTerminal *terminal,
|
||||
GValueArray *params,
|
||||
VteTerminalSequenceHandler handler)
|
||||
{
|
||||
- vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXLONG);
|
||||
+ vte_sequence_handler_multiple_limited(terminal, params, handler, G_MAXUSHORT);
|
||||
}
|
||||
|
||||
static void
|
||||
--
|
||||
cgit v0.9.0.2
|
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ pkgconfig gtk3 glib intltool itstool gnome3.libmediaart
|
||||
gdk_pixbuf gnome3.gnome_icon_theme librsvg python3
|
||||
gnome3.grilo libxml2 python3Packages.pygobject3 libnotify
|
||||
python3Packages.pycairo python3Packages.dbus
|
||||
python3Packages.pycairo python3Packages.dbus gnome3.totem-pl-parser
|
||||
gst_all_1.gstreamer gst_all_1.gst-plugins-base
|
||||
gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad
|
||||
hicolor_icon_theme gnome3.gnome_icon_theme_symbolic
|
||||
@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
|
||||
let
|
||||
libPath = stdenv.lib.makeLibraryPath
|
||||
[ glib gtk3 libnotify tracker gnome3.grilo cairo
|
||||
gst_all_1.gstreamer gst_all_1.gst-plugins-base
|
||||
gst_all_1.gstreamer gst_all_1.gst-plugins-base gnome3.totem-pl-parser
|
||||
gst_all_1.gst-plugins-good gst_all_1.gst-plugins-bad ];
|
||||
in
|
||||
''
|
||||
|
@ -19,9 +19,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard
|
||||
gnome3.gnome_icon_theme hicolor_icon_theme
|
||||
gnome_online_accounts shared_mime_info
|
||||
gnome3.gnome_icon_theme_symbolic ];
|
||||
gnome_online_accounts shared_mime_info ];
|
||||
propagatedBuildInputs = [ folks telepathy_logger evolution_data_server
|
||||
telepathy_mission_control ];
|
||||
buildInputs = [ pkgconfig gtk3 glib webkitgtk intltool itstool
|
||||
@ -31,6 +29,7 @@ stdenv.mkDerivation rec {
|
||||
gcr libsecret pulseaudio gnome3.yelp_xsl gdk_pixbuf
|
||||
libnotify clutter libsoup gnutls libgee p11_kit
|
||||
libcanberra_gtk3 telepathy_farstream farstream
|
||||
gnome3.gnome_icon_theme hicolor_icon_theme gnome3.gnome_icon_theme_symbolic
|
||||
gnome3.gsettings_desktop_schemas file libtool librsvg ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = [ "-I${dbus_glib}/include/dbus-1.0"
|
||||
@ -41,7 +40,7 @@ stdenv.mkDerivation rec {
|
||||
for f in $out/bin/* $out/libexec/*; do
|
||||
wrapProgram $f \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gnome_themes_standard}/:${gnome3.gnome_themes_standard}/share:${hicolor_icon_theme}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
|
||||
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gnome_themes_standard}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
|
||||
done
|
||||
rm $out/share/icons/hicolor/icon-theme.cache
|
||||
'';
|
||||
|
@ -21,8 +21,8 @@ stdenv.mkDerivation rec {
|
||||
++ stdenv.lib.optional valaSupport "--enable-vala-bindings";
|
||||
|
||||
preFixup = ''
|
||||
for f in "$out/libexec/evolution-addressbook-factory" "$out/libexec/evolution-calendar-factory"; do
|
||||
wrapProgram $f --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
|
||||
for f in "$out/libexec/"*; do
|
||||
wrapProgram "$f" --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
|
||||
done
|
||||
'';
|
||||
|
||||
|
@ -39,8 +39,16 @@ stdenv.mkDerivation rec {
|
||||
|
||||
wrapProgram "$out/libexec/gnome-shell-calendar-server" \
|
||||
--prefix XDG_DATA_DIRS : "${evolution_data_server}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
|
||||
|
||||
echo "${unzip}/bin" > $out/${passthru.mozillaPlugin}/extra-bin-path
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
passthru = {
|
||||
mozillaPlugin = "/lib/mozilla/plugins";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user