* Sync with the trunk.
svn path=/nixpkgs/branches/stdenv-updates/; revision=14557
This commit is contained in:
commit
3593b97d63
16
doc/meta.xml
16
doc/meta.xml
@ -64,10 +64,18 @@ interpretation:</para>
|
|||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><varname>description</varname></term>
|
<term><varname>description</varname></term>
|
||||||
<listitem><para>A short (one-line) description of the package.
|
<listitem><para>A short (one-line) description of the package.
|
||||||
Don’t include a period at the end. This is shown by
|
This is shown by <command>nix-env -q --description</command> and
|
||||||
<command>nix-env -q --description</command> and also on the
|
also on the Nixpkgs release pages.</para>
|
||||||
Nixpkgs release pages. Example: <literal>"A program that produces
|
|
||||||
a familiar, friendly greeting"</literal></para></listitem>
|
<para>Don’t include a period at the end. Don’t include newline
|
||||||
|
characters. Capitalise the first character. For brevity, don’t
|
||||||
|
repeat the name of package — just describe what it does.</para>
|
||||||
|
|
||||||
|
<para>Wrong: <literal>"libpng is a library that allows you to decode PNG images."</literal></para>
|
||||||
|
|
||||||
|
<para>Right: <literal>"A library for decoding PNG images"</literal></para>
|
||||||
|
|
||||||
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
|
@ -23,6 +23,9 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
NIX_LDFLAGS = "-L${audacious}/lib/audacious"; # needed because we override pluginlibdir
|
NIX_LDFLAGS = "-L${audacious}/lib/audacious"; # needed because we override pluginlibdir
|
||||||
|
|
||||||
|
# `--enable-amidiplug' is to prevent configure from looking in /proc/asound.
|
||||||
|
configureFlags = "--enable-amidiplug";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Plugins for the Audacious media player";
|
description = "Plugins for the Audacious media player";
|
||||||
homepage = http://audacious-media-player.org/;
|
homepage = http://audacious-media-player.org/;
|
||||||
|
@ -16,8 +16,10 @@ stdenv.mkDerivation {
|
|||||||
++ (if gtkGUI then [pkgconfig gtk] else []);
|
++ (if gtkGUI then [pkgconfig gtk] else []);
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = ''Aumix adjusts an audio mixer from X, the console,
|
longDescription = ''
|
||||||
a terminal, the command line or a script.'';
|
Aumix adjusts an audio mixer from X, the console, a terminal,
|
||||||
|
the command line or a script.
|
||||||
|
'';
|
||||||
homepage = http://www.jpj.net/~trevor/aumix.html;
|
homepage = http://www.jpj.net/~trevor/aumix.html;
|
||||||
license = "GPL";
|
license = "GPL";
|
||||||
};
|
};
|
||||||
|
@ -21,9 +21,7 @@ stdenv.mkDerivation {
|
|||||||
(textClosure localDefs [doConfigure doMakeInstall
|
(textClosure localDefs [doConfigure doMakeInstall
|
||||||
postInstall doForceShare]);
|
postInstall doForceShare]);
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "LADSPA format audio plugins";
|
||||||
LADSPA format audio plugins.
|
|
||||||
";
|
|
||||||
inherit src;
|
inherit src;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -22,9 +22,7 @@ stdenv.mkDerivation {
|
|||||||
builder = writeScript "ladspa.h-builder"
|
builder = writeScript "ladspa.h-builder"
|
||||||
(textClosure localDefs [copyFile]);
|
(textClosure localDefs [copyFile]);
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "LADSPA format audio plugins";
|
||||||
LADSPA format audio plugins.
|
|
||||||
";
|
|
||||||
inherit src;
|
inherit src;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -15,9 +15,10 @@ stdenv.mkDerivation {
|
|||||||
patches = [ ./ogg123-curlopt-mute.patch ];
|
patches = [ ./ogg123-curlopt-mute.patch ];
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = ''A set of command-line tools to manipulate Ogg Vorbis
|
longDescription = ''
|
||||||
audio files, notably the `ogg123' player and the
|
A set of command-line tools to manipulate Ogg Vorbis audio
|
||||||
`oggenc' encoder.'';
|
files, notably the `ogg123' player and the `oggenc' encoder.
|
||||||
|
'';
|
||||||
homepage = http://xiph.org/vorbis/;
|
homepage = http://xiph.org/vorbis/;
|
||||||
license = "GPLv2";
|
license = "GPLv2";
|
||||||
};
|
};
|
||||||
|
@ -1,25 +1,33 @@
|
|||||||
{stdenv, fetchurl, x11, libjpeg, libpng, libXmu, freetype, pam}:
|
{stdenv, fetchurl, x11, libjpeg, libpng, libXmu, freetype, pam}:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation rec {
|
||||||
name = "slim-1.2.6";
|
name = "slim-1.3.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://download.berlios.de/slim/slim-1.2.6.tar.gz;
|
url = "http://download.berlios.de/slim/${name}.tar.gz";
|
||||||
sha256 = "0plcmm955rnv67sx67ka6dccanr4rfzwzvsj6lnr8kqdip4522jg";
|
sha256 = "0xqgzvg6h1bd29140mcgg9r16vcmskz7zmym7i7jlz7x9c1a9mxc";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
# Allow the paths of the configuration file and theme directory to
|
# Allow the paths of the configuration file and theme directory to
|
||||||
# be set at runtime.
|
# be set at runtime.
|
||||||
./runtime-paths.patch
|
./runtime-paths.patch
|
||||||
# PAM support from
|
|
||||||
# http://developer.berlios.de/patch/?func=detailpatch&patch_id=1979&group_id=2663
|
# Fix a bug in slim's PAM support: the "resp" argument to the
|
||||||
|
# conversation function is a pointer to a pointer to an array of
|
||||||
|
# pam_response structures, not a pointer to an array of pointers to
|
||||||
|
# pam_response structures. Of course C can't tell the difference...
|
||||||
./pam.patch
|
./pam.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = [x11 libjpeg libpng libXmu freetype pam];
|
buildInputs = [x11 libjpeg libpng libXmu freetype pam];
|
||||||
|
|
||||||
NIX_CFLAGS_COMPILE = "-I${freetype}/include/freetype2";
|
NIX_CFLAGS_COMPILE = "-I${freetype}/include/freetype2";
|
||||||
preBuild = "
|
|
||||||
|
preBuild = ''
|
||||||
substituteInPlace Makefile --replace /usr /no-such-path
|
substituteInPlace Makefile --replace /usr /no-such-path
|
||||||
makeFlagsArray=(CC=gcc CXX=g++ PREFIX=$out MANDIR=$out/share/man CFGDIR=$out/etc)
|
makeFlagsArray=(CC=gcc CXX=g++ PREFIX=$out MANDIR=$out/share/man CFGDIR=$out/etc USE_PAM=1)
|
||||||
";
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
homepage = http://slim.berlios.de;
|
homepage = http://slim.berlios.de;
|
||||||
|
@ -1,369 +1,89 @@
|
|||||||
diff -rc slim-1.2.6-orig/app.cpp slim-1.2.6/app.cpp
|
diff -rc slim-1.3.1-orig/app.cpp slim-1.3.1/app.cpp
|
||||||
*** slim-1.2.6-orig/app.cpp 2006-09-15 23:00:37.000000000 +0200
|
*** slim-1.3.1-orig/app.cpp 2008-09-26 02:54:15.000000000 +0200
|
||||||
--- slim-1.2.6/app.cpp 2007-06-05 12:45:58.000000000 +0200
|
--- slim-1.3.1/app.cpp 2009-02-17 19:50:06.000000000 +0100
|
||||||
***************
|
***************
|
||||||
*** 25,30 ****
|
*** 41,48 ****
|
||||||
--- 25,68 ----
|
Panel* panel = *static_cast<Panel**>(appdata_ptr);
|
||||||
#include "app.h"
|
int result = PAM_SUCCESS;
|
||||||
#include "numlock.h"
|
for (int i=0; i<num_msg; i++){
|
||||||
|
! resp[i]->resp=0;
|
||||||
+ #ifdef USE_PAM
|
! resp[i]->resp_retcode=0;
|
||||||
+ #include <security/pam_appl.h>
|
switch(msg[i]->msg_style){
|
||||||
+ #include <security/pam_misc.h>
|
case PAM_PROMPT_ECHO_ON:
|
||||||
+ #include <string>
|
// We assume PAM is asking for the username
|
||||||
+
|
--- 41,48 ----
|
||||||
+ pam_handle_t* pamh;
|
Panel* panel = *static_cast<Panel**>(appdata_ptr);
|
||||||
+ char const* PAM_service = "slim"; // <----- Change this, if the patch gets accepted upstream
|
int result = PAM_SUCCESS;
|
||||||
+ string password;
|
for (int i=0; i<num_msg; i++){
|
||||||
+
|
! (*resp)[i].resp=0;
|
||||||
+ int conv(int num_msg, const struct pam_message **msg,
|
! (*resp)[i].resp_retcode=0;
|
||||||
+ struct pam_response **resp, void *appdata_ptr){
|
switch(msg[i]->msg_style){
|
||||||
+ *resp = (struct pam_response *) calloc(num_msg, sizeof(struct pam_response));
|
case PAM_PROMPT_ECHO_ON:
|
||||||
+ for (int i=0; i<num_msg; i++){
|
// We assume PAM is asking for the username
|
||||||
+ resp[i]->resp_retcode=0;
|
|
||||||
+ switch(msg[i]->msg_style){
|
|
||||||
+ case PAM_PROMPT_ECHO_ON:
|
|
||||||
+ // We assume PAM is asking for the username
|
|
||||||
+ // As we should have given that already, this should never happen
|
|
||||||
+ cerr << APPNAME << ": PAM send an unexpected PAM_PROMPT_ECHO_ON" << endl;
|
|
||||||
+ cerr << APPNAME << ": " << msg[i]->msg << endl;
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
+ case PAM_PROMPT_ECHO_OFF:
|
|
||||||
+ // We assume PAM is asking for the password
|
|
||||||
+ resp[i]->resp=x_strdup(password.c_str());
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
+ case PAM_ERROR_MSG:
|
|
||||||
+ case PAM_TEXT_INFO:
|
|
||||||
+ // We simply right these to the log
|
|
||||||
+ // TODO: Maybe we should simply ignore them
|
|
||||||
+ cerr << APPNAME << ": " << msg[i]->msg << endl;
|
|
||||||
+ break;
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+ return PAM_SUCCESS;
|
|
||||||
+ }
|
|
||||||
+ #endif
|
|
||||||
|
|
||||||
extern App* LoginApp;
|
|
||||||
|
|
||||||
***************
|
***************
|
||||||
*** 133,138 ****
|
*** 51,63 ****
|
||||||
--- 171,209 ----
|
case Panel::Suspend:
|
||||||
}
|
case Panel::Halt:
|
||||||
|
case Panel::Reboot:
|
||||||
|
! resp[i]->resp=strdup("root");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case Panel::Console:
|
||||||
|
case Panel::Exit:
|
||||||
|
case Panel::Login:
|
||||||
|
! resp[i]->resp=strdup(panel->GetName().c_str());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
--- 51,63 ----
|
||||||
|
case Panel::Suspend:
|
||||||
|
case Panel::Halt:
|
||||||
|
case Panel::Reboot:
|
||||||
|
! (*resp)[i].resp=strdup("root");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case Panel::Console:
|
||||||
|
case Panel::Exit:
|
||||||
|
case Panel::Login:
|
||||||
|
! (*resp)[i].resp=strdup(panel->GetName().c_str());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
***************
|
||||||
|
*** 73,79 ****
|
||||||
|
|
||||||
|
default:
|
||||||
|
panel->EventHandler(Panel::Get_Passwd);
|
||||||
|
! resp[i]->resp=strdup(panel->GetPasswd().c_str());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
--- 73,79 ----
|
||||||
|
|
||||||
|
default:
|
||||||
|
panel->EventHandler(Panel::Get_Passwd);
|
||||||
|
! (*resp)[i].resp=strdup(panel->GetPasswd().c_str());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
***************
|
||||||
|
*** 89,97 ****
|
||||||
}
|
}
|
||||||
|
if (result!=PAM_SUCCESS){
|
||||||
+ #ifdef USE_PAM
|
for (int i=0; i<num_msg; i++){
|
||||||
+ int last_result;
|
! if (resp[i]->resp==0) continue;
|
||||||
+ struct pam_conv pam_conversation = {
|
! free(resp[i]->resp);
|
||||||
+ conv,
|
! resp[i]->resp=0;
|
||||||
+ NULL
|
};
|
||||||
+ };
|
free(*resp);
|
||||||
+
|
*resp=0;
|
||||||
+ // Start the PAM session
|
--- 89,97 ----
|
||||||
+ if ((last_result=pam_start(PAM_service, NULL, &pam_conversation, &pamh))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ exit(ERR_EXIT);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ // Setup some PAM items
|
|
||||||
+ if ((last_result=pam_set_item(pamh, PAM_TTY, DisplayName))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ pam_end(pamh, last_result);
|
|
||||||
+ exit(ERR_EXIT);
|
|
||||||
+ }
|
|
||||||
+ char* pam_ruser = "root\0"; // <---- We already checked for this in the constructor
|
|
||||||
+ if ((last_result=pam_set_item(pamh, PAM_RUSER, pam_ruser))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ pam_end(pamh, last_result);
|
|
||||||
+ exit(ERR_EXIT);
|
|
||||||
+ }
|
|
||||||
+ char* pam_rhost = "localhost\0"; // <---- This might not entirely correct
|
|
||||||
+ if ((last_result=pam_set_item(pamh, PAM_RHOST, pam_rhost))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ pam_end(pamh, last_result);
|
|
||||||
+ exit(ERR_EXIT);
|
|
||||||
+ }
|
|
||||||
+ #endif
|
|
||||||
+
|
|
||||||
bool loaded = false;
|
|
||||||
while (!loaded) {
|
|
||||||
themedir = themebase + themeName;
|
|
||||||
***************
|
|
||||||
*** 313,318 ****
|
|
||||||
--- 384,421 ----
|
|
||||||
struct passwd *pw;
|
|
||||||
pid_t pid;
|
|
||||||
|
|
||||||
+ #ifdef USE_PAM
|
|
||||||
+ int last_result;
|
|
||||||
+ switch ((last_result=pam_setcred(pamh, PAM_ESTABLISH_CRED | PAM_SILENT))){
|
|
||||||
+ case PAM_SUCCESS:
|
|
||||||
+ // Credentials was established successfully
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
+ case PAM_CRED_ERR:
|
|
||||||
+ case PAM_CRED_EXPIRED:
|
|
||||||
+ case PAM_CRED_UNAVAIL:
|
|
||||||
+ case PAM_USER_UNKNOWN:
|
|
||||||
+ // Credentials couldn't be established
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
+ case PAM_BUF_ERR:
|
|
||||||
+ case PAM_SYSTEM_ERR:
|
|
||||||
+ default:
|
|
||||||
+ // System error -> bail out!
|
|
||||||
+ last_result=pam_setcred(pamh, PAM_DELETE_CRED);
|
|
||||||
+ pam_end(pamh, last_result);
|
|
||||||
+ exit(ERR_EXIT);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if ((last_result=pam_open_session(pamh, PAM_SILENT))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ pam_setcred(pamh, PAM_DELETE_CRED);
|
|
||||||
+ // TODO: Do we need more serious actions?
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+ #endif
|
|
||||||
+
|
|
||||||
pw = LoginPanel->GetInput()->GetPasswdStruct();
|
|
||||||
if(pw == 0)
|
|
||||||
return;
|
|
||||||
***************
|
|
||||||
*** 320,325 ****
|
|
||||||
--- 423,433 ----
|
|
||||||
// Create new process
|
|
||||||
pid = fork();
|
|
||||||
if(pid == 0) {
|
|
||||||
+ #ifdef USE_PAM
|
|
||||||
+ // Close the child's copy of the PAM-handle
|
|
||||||
+ pam_end(pamh, PAM_SUCCESS | PAM_DATA_SILENT);
|
|
||||||
+ #endif
|
|
||||||
+
|
|
||||||
// Login process starts here
|
|
||||||
SwitchUser Su(pw, cfg, DisplayName);
|
|
||||||
string session = LoginPanel->getSession();
|
|
||||||
***************
|
|
||||||
*** 355,361 ****
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
if (result!=PAM_SUCCESS){
|
||||||
! // Close all clients
|
for (int i=0; i<num_msg; i++){
|
||||||
KillAllClients(False);
|
! if ((*resp)[i].resp==0) continue;
|
||||||
KillAllClients(True);
|
! free((*resp)[i].resp);
|
||||||
|
! (*resp)[i].resp=0;
|
||||||
--- 463,477 ----
|
};
|
||||||
}
|
free(*resp);
|
||||||
}
|
*resp=0;
|
||||||
|
|
||||||
! #ifdef USE_PAM
|
|
||||||
! if ((last_result=pam_close_session(pamh, PAM_SILENT))!=PAM_SUCCESS){
|
|
||||||
! cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
! last_result=pam_setcred(pamh, PAM_DELETE_CRED);
|
|
||||||
! // TODO: Do we need more serious actions?
|
|
||||||
! }
|
|
||||||
! #endif
|
|
||||||
!
|
|
||||||
! // Close all clients
|
|
||||||
KillAllClients(False);
|
|
||||||
KillAllClients(True);
|
|
||||||
|
|
||||||
***************
|
|
||||||
*** 382,387 ****
|
|
||||||
--- 498,510 ----
|
|
||||||
// Stop alarm clock
|
|
||||||
alarm(0);
|
|
||||||
|
|
||||||
+ #ifdef USE_PAM
|
|
||||||
+ int last_result;
|
|
||||||
+ if ((last_result=pam_end(pamh, PAM_SUCCESS))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ }
|
|
||||||
+ #endif
|
|
||||||
+
|
|
||||||
// Write message
|
|
||||||
LoginPanel->Message((char*)cfg->getOption("reboot_msg").c_str());
|
|
||||||
sleep(3);
|
|
||||||
***************
|
|
||||||
*** 398,403 ****
|
|
||||||
--- 521,533 ----
|
|
||||||
// Stop alarm clock
|
|
||||||
alarm(0);
|
|
||||||
|
|
||||||
+ #ifdef USE_PAM
|
|
||||||
+ int last_result;
|
|
||||||
+ if ((last_result=pam_end(pamh, PAM_SUCCESS))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ }
|
|
||||||
+ #endif
|
|
||||||
+
|
|
||||||
// Write message
|
|
||||||
LoginPanel->Message((char*)cfg->getOption("shutdown_msg").c_str());
|
|
||||||
sleep(3);
|
|
||||||
***************
|
|
||||||
*** 433,438 ****
|
|
||||||
--- 563,575 ----
|
|
||||||
|
|
||||||
|
|
||||||
void App::Exit() {
|
|
||||||
+ #ifdef USE_PAM
|
|
||||||
+ int last_result;
|
|
||||||
+ if ((last_result=pam_end(pamh, PAM_SUCCESS))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ }
|
|
||||||
+ #endif
|
|
||||||
+
|
|
||||||
if (testing) {
|
|
||||||
char* testmsg = "This is a test message :-)";
|
|
||||||
LoginPanel->Message(testmsg);
|
|
||||||
***************
|
|
||||||
*** 453,458 ****
|
|
||||||
--- 590,602 ----
|
|
||||||
}
|
|
||||||
|
|
||||||
void App::RestartServer() {
|
|
||||||
+ #ifdef USE_PAM
|
|
||||||
+ int last_result;
|
|
||||||
+ if ((last_result=pam_end(pamh, PAM_SUCCESS))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ }
|
|
||||||
+ #endif
|
|
||||||
+
|
|
||||||
StopServer();
|
|
||||||
RemoveLock();
|
|
||||||
Run();
|
|
||||||
Only in slim-1.2.6/: app.cpp~
|
|
||||||
diff -rc slim-1.2.6-orig/input.cpp slim-1.2.6/input.cpp
|
|
||||||
*** slim-1.2.6-orig/input.cpp 2006-09-15 23:00:37.000000000 +0200
|
|
||||||
--- slim-1.2.6/input.cpp 2007-06-05 12:45:58.000000000 +0200
|
|
||||||
***************
|
|
||||||
*** 12,17 ****
|
|
||||||
--- 12,25 ----
|
|
||||||
#include "input.h"
|
|
||||||
#include <cstdlib>
|
|
||||||
|
|
||||||
+ #ifdef USE_PAM
|
|
||||||
+ #include <security/pam_appl.h>
|
|
||||||
+ #include <string>
|
|
||||||
+
|
|
||||||
+ extern pam_handle_t* pamh;
|
|
||||||
+ extern string password;
|
|
||||||
+ #endif
|
|
||||||
+
|
|
||||||
Input::Input(Cfg* c) {
|
|
||||||
NameBuffer[0] = '\0';
|
|
||||||
PasswdBuffer[0] = '\0';
|
|
||||||
***************
|
|
||||||
*** 100,106 ****
|
|
||||||
--- 108,126 ----
|
|
||||||
|
|
||||||
|
|
||||||
struct passwd* Input::GetPasswdStruct() {
|
|
||||||
+ #ifdef USE_PAM
|
|
||||||
+ int last_result;
|
|
||||||
+ char* username=NULL;
|
|
||||||
+
|
|
||||||
+ if ((last_result=pam_get_item(pamh, PAM_USER, (const void**)&username))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ pam_end(pamh, last_result);
|
|
||||||
+ exit(ERR_EXIT);
|
|
||||||
+ }
|
|
||||||
+ struct passwd* pw = getpwnam(username);
|
|
||||||
+ #else
|
|
||||||
struct passwd* pw = getpwnam(NameBuffer);
|
|
||||||
+ #endif
|
|
||||||
endpwent();
|
|
||||||
if (pw->pw_shell[0] == '\0') {
|
|
||||||
setusershell();
|
|
||||||
***************
|
|
||||||
*** 183,188 ****
|
|
||||||
--- 203,240 ----
|
|
||||||
}
|
|
||||||
|
|
||||||
int Input::Correct() {
|
|
||||||
+ #ifdef USE_PAM
|
|
||||||
+ int last_result;
|
|
||||||
+
|
|
||||||
+ // Store the password in global variables accessible
|
|
||||||
+ // by the PAM-conversation function
|
|
||||||
+ password=PasswdBuffer;
|
|
||||||
+
|
|
||||||
+ // Set the username in PAM
|
|
||||||
+ if ((last_result=pam_set_item(pamh, PAM_USER, NameBuffer))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ pam_end(pamh, last_result);
|
|
||||||
+ exit(ERR_EXIT);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ // Authenticate the user
|
|
||||||
+ if ((last_result=pam_authenticate(pamh, PAM_DISALLOW_NULL_AUTHTOK))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ if (last_result==PAM_ABORT){
|
|
||||||
+ pam_end(pamh, last_result);
|
|
||||||
+ exit(ERR_EXIT);
|
|
||||||
+ }
|
|
||||||
+ return 0;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ // Check the health of the account
|
|
||||||
+ if ((last_result=pam_acct_mgmt(pamh, PAM_SILENT))!=PAM_SUCCESS){
|
|
||||||
+ cerr << APPNAME << ": " << pam_strerror(pamh, last_result) << endl;
|
|
||||||
+ return 0;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ return 1;
|
|
||||||
+ #else
|
|
||||||
char *unencrypted, *encrypted, *correct;
|
|
||||||
struct passwd *pw;
|
|
||||||
|
|
||||||
***************
|
|
||||||
*** 197,203 ****
|
|
||||||
if(sp)
|
|
||||||
correct = sp->sp_pwdp;
|
|
||||||
else
|
|
||||||
! #endif
|
|
||||||
correct = pw->pw_passwd;
|
|
||||||
|
|
||||||
if(correct == 0 || correct[0] == '\0')
|
|
||||||
--- 249,255 ----
|
|
||||||
if(sp)
|
|
||||||
correct = sp->sp_pwdp;
|
|
||||||
else
|
|
||||||
! #endif /* HAVE_SHADOW */
|
|
||||||
correct = pw->pw_passwd;
|
|
||||||
|
|
||||||
if(correct == 0 || correct[0] == '\0')
|
|
||||||
***************
|
|
||||||
*** 207,212 ****
|
|
||||||
--- 259,265 ----
|
|
||||||
encrypted = crypt(unencrypted, correct);
|
|
||||||
memset(unencrypted, 0, strlen (unencrypted));
|
|
||||||
return (strcmp(encrypted, correct) == 0);
|
|
||||||
+ #endif /* USE_PAM */
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
diff -rc slim-1.2.6-orig/Makefile slim-1.2.6/Makefile
|
|
||||||
*** slim-1.2.6-orig/Makefile 2006-09-15 23:00:37.000000000 +0200
|
|
||||||
--- slim-1.2.6/Makefile 2007-06-05 12:45:58.000000000 +0200
|
|
||||||
***************
|
|
||||||
*** 6,13 ****
|
|
||||||
CXX=/usr/bin/g++
|
|
||||||
CC=/usr/bin/gcc
|
|
||||||
CFLAGS=-I. -I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include/libpng12 -I/usr/include
|
|
||||||
! LDFLAGS=-L/usr/X11R6/lib -lXft -lX11 -lfreetype -lXrender -lfontconfig -lpng12 -lz -lm -lcrypt -lXmu -lpng -ljpeg
|
|
||||||
! CUSTOM=-DHAVE_SHADOW
|
|
||||||
PREFIX=/usr
|
|
||||||
CFGDIR=/etc
|
|
||||||
MANDIR=/usr/man
|
|
||||||
--- 6,13 ----
|
|
||||||
CXX=/usr/bin/g++
|
|
||||||
CC=/usr/bin/gcc
|
|
||||||
CFLAGS=-I. -I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include/libpng12 -I/usr/include
|
|
||||||
! LDFLAGS=-L/usr/X11R6/lib -lXft -lX11 -lfreetype -lXrender -lfontconfig -lpng12 -lz -lm -lcrypt -lXmu -lpng -ljpeg -lpam
|
|
||||||
! CUSTOM=-DHAVE_SHADOW -DUSE_PAM
|
|
||||||
PREFIX=/usr
|
|
||||||
CFGDIR=/etc
|
|
||||||
MANDIR=/usr/man
|
|
||||||
|
@ -14,8 +14,7 @@ stdenv.mkDerivation {
|
|||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = ''The Insidious Big Brother Database (BBDB), a
|
description = "The Insidious Big Brother Database (BBDB), a contact management utility for Emacs";
|
||||||
contact management utility for Emacs.'';
|
|
||||||
homepage = http://bbdb.sourceforge.net/;
|
homepage = http://bbdb.sourceforge.net/;
|
||||||
license = "GPL";
|
license = "GPL";
|
||||||
};
|
};
|
||||||
|
48
pkgs/applications/editors/emacs-modes/cedet/default.nix
Normal file
48
pkgs/applications/editors/emacs-modes/cedet/default.nix
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
{ fetchurl, stdenv, emacs }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "cedet-1.0pre6";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "mirror://sourceforge/cedet/${name}.tar.gz";
|
||||||
|
sha256 = "0pvd54rjlba12cxgqibm8v4i8x43r5c239z891lgcbafjvkzpdxb";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ emacs ];
|
||||||
|
|
||||||
|
doCheck = true;
|
||||||
|
checkPhase = "make utest";
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
ensureDir "$out/share/emacs/site-lisp"
|
||||||
|
cp -v */*.el */*/*.el */*.elc */*/*.elc "$out/share/emacs/site-lisp"
|
||||||
|
chmod a-x "$out/share/emacs/site-lisp/"*
|
||||||
|
|
||||||
|
ensureDir "$out/share/info"
|
||||||
|
cp -v */*.info* */*/*.info* "$out/share/info"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "CEDET, a Collection of Emacs Development Environment Tools";
|
||||||
|
|
||||||
|
longDescription = ''
|
||||||
|
CEDET is a collection of tools written with the end goal of
|
||||||
|
creating an advanced development environment in Emacs.
|
||||||
|
|
||||||
|
Emacs already is a great environment for writing software, but
|
||||||
|
there are additional areas that need improvement. Many new
|
||||||
|
ideas for integrated environments have been developed in newer
|
||||||
|
products, such as JBuilder, Eclipse, or KDevelop. CEDET is a
|
||||||
|
project which brings together several different tools needed to
|
||||||
|
implement advanced features.
|
||||||
|
|
||||||
|
CEDET includes EIEIO (Enhanced Implementation of Emacs
|
||||||
|
Interpreted Objects), Semantic, SRecode, Speedbar, EDE (Emacs
|
||||||
|
Development Environment), and COGRE (COnnected GRaph Editor).
|
||||||
|
'';
|
||||||
|
|
||||||
|
license = "GPLv2+";
|
||||||
|
|
||||||
|
homepage = http://cedet.sourceforge.net/;
|
||||||
|
};
|
||||||
|
}
|
@ -26,6 +26,8 @@ stdenv.mkDerivation rec {
|
|||||||
description = "EIEIO: Enhanced Implementation of Emacs Interpreted Objects";
|
description = "EIEIO: Enhanced Implementation of Emacs Interpreted Objects";
|
||||||
|
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
|
This package is now part of CEDET, please upgrade.
|
||||||
|
|
||||||
EIEIO is a package which implements a CLOS subset for Emacs. It
|
EIEIO is a package which implements a CLOS subset for Emacs. It
|
||||||
includes examples which can draw simple tree graphs, and bar
|
includes examples which can draw simple tree graphs, and bar
|
||||||
charts.
|
charts.
|
||||||
|
@ -14,8 +14,7 @@ stdenv.mkDerivation {
|
|||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = ''Quack: Enhanced Emacs Support for Editing and
|
description = "Enhanced Emacs support for editing and running Scheme code";
|
||||||
Running Scheme Code'';
|
|
||||||
homepage = http://www.neilvandyke.org/quack/;
|
homepage = http://www.neilvandyke.org/quack/;
|
||||||
license = "GPLv2+";
|
license = "GPLv2+";
|
||||||
};
|
};
|
||||||
|
@ -30,6 +30,8 @@ stdenv.mkDerivation rec {
|
|||||||
description = "Semantic, infrastructure for parser based text analysis in Emacs";
|
description = "Semantic, infrastructure for parser based text analysis in Emacs";
|
||||||
|
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
|
This package is now part of CEDET, please upgrade.
|
||||||
|
|
||||||
Semantic is an infrastructure for parser based text analysis in
|
Semantic is an infrastructure for parser based text analysis in
|
||||||
Emacs. It is a lexer, parser-generator, and parser. It is
|
Emacs. It is a lexer, parser-generator, and parser. It is
|
||||||
written in Emacs Lisp and is customized to the way Emacs thinks
|
written in Emacs Lisp and is customized to the way Emacs thinks
|
||||||
|
@ -1,38 +1,43 @@
|
|||||||
{ xawSupport ? true
|
{ xawSupport ? true
|
||||||
, xpmSupport ? true
|
, xpmSupport ? true
|
||||||
|
, dbusSupport ? true
|
||||||
, xaw3dSupport ? false
|
, xaw3dSupport ? false
|
||||||
, gtkGUI ? false
|
, gtkGUI ? false
|
||||||
, xftSupport ? false
|
, xftSupport ? false
|
||||||
, stdenv, fetchurl, ncurses, x11, libXaw ? null, libXpm ? null, Xaw3d ? null
|
, stdenv, fetchcvs, ncurses, x11, libXaw ? null, libXpm ? null, Xaw3d ? null
|
||||||
, pkgconfig ? null, gtk ? null, libXft ? null
|
, pkgconfig ? null, gtk ? null, libXft ? null, dbus ? null
|
||||||
, libpng, libjpeg, libungif, libtiff, texinfo
|
, libpng, libjpeg, libungif, libtiff, texinfo
|
||||||
|
, autoconf, automake
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert xawSupport -> libXaw != null;
|
assert xawSupport -> libXaw != null;
|
||||||
assert xpmSupport -> libXpm != null;
|
assert xpmSupport -> libXpm != null;
|
||||||
|
assert dbusSupport -> dbus != null;
|
||||||
assert xaw3dSupport -> Xaw3d != null;
|
assert xaw3dSupport -> Xaw3d != null;
|
||||||
assert gtkGUI -> pkgconfig != null && gtk != null;
|
assert gtkGUI -> pkgconfig != null && gtk != null;
|
||||||
assert xftSupport -> libXft != null && libpng != null; # libpng = probably a bug
|
assert xftSupport -> libXft != null && libpng != null; # libpng = probably a bug
|
||||||
|
|
||||||
let date = "20080228"; in
|
let date = "2009-02-16"; in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "emacs-snapshot-23-${date}";
|
name = "emacs-snapshot-23-${date}";
|
||||||
|
|
||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchcvs {
|
||||||
url = "http://ppa.launchpad.net/avassalotti/ubuntu/pool/main/e/emacs-snapshot/emacs-snapshot_${date}.orig.tar.gz";
|
inherit date;
|
||||||
sha256 = "1cix1qjrynidvdyww3g8fm1wyggc82qjxbfbv3rx630szm1v6bm7";
|
cvsRoot = ":pserver:anonymous@cvs.savannah.gnu.org:/sources/emacs";
|
||||||
|
module = "emacs";
|
||||||
|
sha256 = "6ec63da94a199c5f95bf4a9aa578cf14b3d85800fd37b3562d9a446b144b0d47";
|
||||||
};
|
};
|
||||||
|
|
||||||
# patches = [
|
preConfigure = "autoreconf -vfi";
|
||||||
# ./crt.patch
|
|
||||||
# ];
|
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
autoconf automake
|
||||||
ncurses x11 texinfo
|
ncurses x11 texinfo
|
||||||
(if xawSupport then libXaw else null)
|
(if xawSupport then libXaw else null)
|
||||||
(if xpmSupport then libXpm else null)
|
(if xpmSupport then libXpm else null)
|
||||||
|
(if dbusSupport then dbus else null)
|
||||||
(if xaw3dSupport then Xaw3d else null)
|
(if xaw3dSupport then Xaw3d else null)
|
||||||
libpng libjpeg libungif libtiff # maybe not strictly required?
|
libpng libjpeg libungif libtiff # maybe not strictly required?
|
||||||
]
|
]
|
||||||
@ -44,7 +49,7 @@ stdenv.mkDerivation {
|
|||||||
";
|
";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Emacs with Unicode, GTK and Xft support (23.x alpha)";
|
description = "GNU Emacs with Unicode, GTK and Xft support (23.x alpha)";
|
||||||
homepage = http://www.emacswiki.org/cgi-bin/wiki/XftGnuEmacs;
|
homepage = http://www.emacswiki.org/cgi-bin/wiki/XftGnuEmacs;
|
||||||
license = "GPLv3+";
|
license = "GPLv3+";
|
||||||
};
|
};
|
||||||
|
@ -2,77 +2,79 @@
|
|||||||
# but I have gvim with python support now :) - Marc
|
# but I have gvim with python support now :) - Marc
|
||||||
args: with args;
|
args: with args;
|
||||||
let inherit (args.composableDerivation) composableDerivation edf; in
|
let inherit (args.composableDerivation) composableDerivation edf; in
|
||||||
composableDerivation {
|
composableDerivation {} {
|
||||||
initial = {
|
|
||||||
|
|
||||||
name = "vim_configurable-7.1";
|
name = "vim_configurable-7.2";
|
||||||
|
|
||||||
src = args.fetchurl {
|
src = args.fetchurl {
|
||||||
url = ftp://ftp.vim.org/pub/vim/unix/vim-7.2.tar.bz2;
|
url = ftp://ftp.vim.org/pub/vim/unix/vim-7.2.tar.bz2;
|
||||||
sha256 = "11hxkb6r2550c4n13nwr0d8afvh30qjyr5c2hw16zgay43rb0kci";
|
sha256 = "11hxkb6r2550c4n13nwr0d8afvh30qjyr5c2hw16zgay43rb0kci";
|
||||||
};
|
|
||||||
|
|
||||||
configureFlags = ["--enable-gui=auto" "--with-features=${args.features}"];
|
|
||||||
|
|
||||||
buildInputs = [ncurses pkgconfig]
|
|
||||||
++ [ gtk libX11 libXext libSM libXpm libXt libXaw libXau libXmu ];
|
|
||||||
|
|
||||||
# most interpreters aren't tested yet.. (see python for example how to do it)
|
|
||||||
flags = {}
|
|
||||||
// edf { name = "darwin"; } #Disable Darwin (Mac OS X) support.
|
|
||||||
// edf { name = "xsmp"; } #Disable XSMP session management
|
|
||||||
// edf { name = "xsmp_interact"; } #Disable XSMP interaction
|
|
||||||
// edf { name = "mzscheme"; } #Include MzScheme interpreter.
|
|
||||||
// edf { name = "perl"; feat = "perlinterp"; enable = { buildInputs = [perl]; };} #Include Perl interpreter.
|
|
||||||
// edf { name = "python"; feat = "pythoninterp"; enable = { buildInputs = [python]; }; } #Include Python interpreter.
|
|
||||||
// edf { name = "tcl"; enable = { buildInputs = [tcl]; }; } #Include Tcl interpreter.
|
|
||||||
// edf { name = "ruby"; feat = "rubyinterp"; enable = { buildInputs = [ruby]; };} #Include Ruby interpreter.
|
|
||||||
// edf { name = "cscope"; } #Include cscope interface.
|
|
||||||
// edf { name = "workshop"; } #Include Sun Visual Workshop support.
|
|
||||||
// edf { name = "netbeans"; } #Disable NetBeans integration support.
|
|
||||||
// edf { name = "sniff"; } #Include Sniff interface.
|
|
||||||
// edf { name = "multibyte"; } #Include multibyte editing support.
|
|
||||||
// edf { name = "hangulinput"; } #Include Hangul input support.
|
|
||||||
# // edf { name = "xim"; enable = { buildInputs = [xim]; }; } #Include XIM input support.
|
|
||||||
// edf { name = "fontset"; } #Include X fontset output support.
|
|
||||||
// edf { name = "acl"; } #Don't check for ACL support.
|
|
||||||
// edf { name = "gpm"; } #Don't use gpm (Linux mouse daemon).
|
|
||||||
// edf { name = "nls"; } #Don't support NLS (gettext()).
|
|
||||||
;
|
|
||||||
|
|
||||||
cfg = {
|
|
||||||
pythonSupport = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#--enable-gui=OPTS X11 GUI default=auto OPTS=auto/no/gtk/gtk2/gnome/gnome2/motif/athena/neXtaw/photon/carbon
|
configureFlags = ["--enable-gui=auto" "--with-features=${args.features}"];
|
||||||
/*
|
|
||||||
// edf "gtk_check" "gtk_check" { } #If auto-select GUI, check for GTK default=yes
|
|
||||||
// edf "gtk2_check" "gtk2_check" { } #If GTK GUI, check for GTK+ 2 default=yes
|
|
||||||
// edf "gnome_check" "gnome_check" { } #If GTK GUI, check for GNOME default=no
|
|
||||||
// edf "motif_check" "motif_check" { } #If auto-select GUI, check for Motif default=yes
|
|
||||||
// edf "athena_check" "athena_check" { } #If auto-select GUI, check for Athena default=yes
|
|
||||||
// edf "nextaw_check" "nextaw_check" { } #If auto-select GUI, check for neXtaw default=yes
|
|
||||||
// edf "carbon_check" "carbon_check" { } #If auto-select GUI, check for Carbon default=yes
|
|
||||||
// edf "gtktest" "gtktest" { } #Do not try to compile and run a test GTK program
|
|
||||||
*/
|
|
||||||
|
|
||||||
postInstall = "
|
buildInputs = [ncurses pkgconfig]
|
||||||
rpath=`patchelf --print-rpath \$out/bin/vim`;
|
++ [ gtk libX11 libXext libSM libXpm libXt libXaw libXau libXmu ];
|
||||||
for i in $\buildInputs; do
|
|
||||||
echo adding \$i/lib
|
|
||||||
rpath=\$rpath:\$i/lib
|
|
||||||
done
|
|
||||||
echo \$buildInputs
|
|
||||||
echo \$rpath
|
|
||||||
patchelf --set-rpath \$rpath \$out/bin/{vim,gvim}
|
|
||||||
";
|
|
||||||
dontStrip =1;
|
|
||||||
|
|
||||||
meta = {
|
# most interpreters aren't tested yet.. (see python for example how to do it)
|
||||||
description = "The most popular clone of the VI editor";
|
flags = {
|
||||||
homepage = "www.vim.org";
|
ftNix = {
|
||||||
};
|
patches = [ ./ft-nix-support.patch ];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
// edf { name = "darwin"; } #Disable Darwin (Mac OS X) support.
|
||||||
|
// edf { name = "xsmp"; } #Disable XSMP session management
|
||||||
|
// edf { name = "xsmp_interact"; } #Disable XSMP interaction
|
||||||
|
// edf { name = "mzscheme"; } #Include MzScheme interpreter.
|
||||||
|
// edf { name = "perl"; feat = "perlinterp"; enable = { buildInputs = [perl]; };} #Include Perl interpreter.
|
||||||
|
// edf { name = "python"; feat = "pythoninterp"; enable = { buildInputs = [python]; }; } #Include Python interpreter.
|
||||||
|
// edf { name = "tcl"; enable = { buildInputs = [tcl]; }; } #Include Tcl interpreter.
|
||||||
|
// edf { name = "ruby"; feat = "rubyinterp"; enable = { buildInputs = [ruby]; };} #Include Ruby interpreter.
|
||||||
|
// edf { name = "cscope"; } #Include cscope interface.
|
||||||
|
// edf { name = "workshop"; } #Include Sun Visual Workshop support.
|
||||||
|
// edf { name = "netbeans"; } #Disable NetBeans integration support.
|
||||||
|
// edf { name = "sniff"; } #Include Sniff interface.
|
||||||
|
// edf { name = "multibyte"; } #Include multibyte editing support.
|
||||||
|
// edf { name = "hangulinput"; } #Include Hangul input support.
|
||||||
|
# // edf { name = "xim"; enable = { buildInputs = [xim]; }; } #Include XIM input support.
|
||||||
|
// edf { name = "fontset"; } #Include X fontset output support.
|
||||||
|
// edf { name = "acl"; } #Don't check for ACL support.
|
||||||
|
// edf { name = "gpm"; } #Don't use gpm (Linux mouse daemon).
|
||||||
|
// edf { name = "nls"; } #Don't support NLS (gettext()).
|
||||||
|
;
|
||||||
|
|
||||||
|
cfg = {
|
||||||
|
pythonSupport = true;
|
||||||
|
ftNixSupport = true; # add .nix filetype detection and minimal syntax highlighting support
|
||||||
|
};
|
||||||
|
|
||||||
|
#--enable-gui=OPTS X11 GUI default=auto OPTS=auto/no/gtk/gtk2/gnome/gnome2/motif/athena/neXtaw/photon/carbon
|
||||||
|
/*
|
||||||
|
// edf "gtk_check" "gtk_check" { } #If auto-select GUI, check for GTK default=yes
|
||||||
|
// edf "gtk2_check" "gtk2_check" { } #If GTK GUI, check for GTK+ 2 default=yes
|
||||||
|
// edf "gnome_check" "gnome_check" { } #If GTK GUI, check for GNOME default=no
|
||||||
|
// edf "motif_check" "motif_check" { } #If auto-select GUI, check for Motif default=yes
|
||||||
|
// edf "athena_check" "athena_check" { } #If auto-select GUI, check for Athena default=yes
|
||||||
|
// edf "nextaw_check" "nextaw_check" { } #If auto-select GUI, check for neXtaw default=yes
|
||||||
|
// edf "carbon_check" "carbon_check" { } #If auto-select GUI, check for Carbon default=yes
|
||||||
|
// edf "gtktest" "gtktest" { } #Do not try to compile and run a test GTK program
|
||||||
|
*/
|
||||||
|
|
||||||
|
postInstall = "
|
||||||
|
rpath=`patchelf --print-rpath \$out/bin/vim`;
|
||||||
|
for i in $\buildInputs; do
|
||||||
|
echo adding \$i/lib
|
||||||
|
rpath=\$rpath:\$i/lib
|
||||||
|
done
|
||||||
|
echo \$buildInputs
|
||||||
|
echo \$rpath
|
||||||
|
patchelf --set-rpath \$rpath \$out/bin/{vim,gvim}
|
||||||
|
";
|
||||||
|
dontStrip =1;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "The most popular clone of the VI editor";
|
||||||
|
homepage = "www.vim.org";
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
66
pkgs/applications/editors/vim/ft-nix-support.patch
Normal file
66
pkgs/applications/editors/vim/ft-nix-support.patch
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
|
||||||
|
index a8e6261..2b008fc 100644
|
||||||
|
--- a/runtime/filetype.vim
|
||||||
|
+++ b/runtime/filetype.vim
|
||||||
|
@@ -2258,6 +2258,9 @@ au BufNewFile,BufRead *.zsql call s:SQL()
|
||||||
|
" Z80 assembler asz80
|
||||||
|
au BufNewFile,BufRead *.z8a setf z8a
|
||||||
|
|
||||||
|
+" NIX
|
||||||
|
+au BufNewFile,BufRead *.nix setf nix
|
||||||
|
+
|
||||||
|
augroup END
|
||||||
|
|
||||||
|
|
||||||
|
@@ -2440,3 +2443,5 @@ endfunc
|
||||||
|
" Restore 'cpoptions'
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
|
+
|
||||||
|
+
|
||||||
|
diff --git a/runtime/syntax/nix.vim b/runtime/syntax/nix.vim
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..a2f9918
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/runtime/syntax/nix.vim
|
||||||
|
@@ -0,0 +1,40 @@
|
||||||
|
+" Vim syntax file
|
||||||
|
+" Language: nix
|
||||||
|
+" Maintainer: Marc Weber <marco-oweber@gmx.de>
|
||||||
|
+" Modify and commit if you feel that way
|
||||||
|
+" Last Change: 2007 Dec
|
||||||
|
+"
|
||||||
|
+" this syntax file can be still be enhanced very much..
|
||||||
|
+" Don't ask, do it :-)
|
||||||
|
+
|
||||||
|
+" Quit when a (custom) syntax file was already loaded
|
||||||
|
+if exists("b:current_syntax")
|
||||||
|
+ finish
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
+syn keyword nixKeyword let throw inherit import true false null with
|
||||||
|
+syn keyword nixConditional if else then
|
||||||
|
+syn keyword nixBrace ( ) { } =
|
||||||
|
+syn keyword nixBuiltin __currentSystem __currentTime __isFunction __getEnv __trace __toPath __pathExists
|
||||||
|
+ \ __readFile __toXML __toFile __filterSource __attrNames __getAttr __hasAttr __isAttrs __listToAttrs __isList
|
||||||
|
+ \ __head __tail __add __sub __lessThan __substring __stringLength
|
||||||
|
+
|
||||||
|
+syn match nixAttr "\w\+\ze\s*="
|
||||||
|
+syn match nixFuncArg "\zs\w\+\ze\s*:"
|
||||||
|
+syn region nixStringParam start=+\${+ end=+}+
|
||||||
|
+syn region nixMultiLineComment start=+/\*+ skip=+\\"+ end=+\*/+
|
||||||
|
+syn match nixEndOfLineComment "#.*$"
|
||||||
|
+syn region nixStringIndented start=+''+ skip=+'''\|''${\|"+ end=+''+ contains=nixStringParam
|
||||||
|
+syn region nixString start=+"+ skip=+\\"+ end=+"+ contains=nixStringParam
|
||||||
|
+
|
||||||
|
+hi def link nixKeyword Keyword
|
||||||
|
+hi def link nixConditional Conditional
|
||||||
|
+hi def link nixBrace Special
|
||||||
|
+hi def link nixString String
|
||||||
|
+hi def link nixStringIndented String
|
||||||
|
+hi def link nixBuiltin Special
|
||||||
|
+hi def link nixStringParam Macro
|
||||||
|
+hi def link nixMultiLineComment Comment
|
||||||
|
+hi def link nixEndOfLineComment Comment
|
||||||
|
+hi def link nixAttr Identifier
|
||||||
|
+hi def link nixFuncArg Identifier
|
43
pkgs/applications/editors/zile/default.nix
Normal file
43
pkgs/applications/editors/zile/default.nix
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
{ fetchurl, stdenv, ncurses, help2man }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "zile-2.3.4";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "mirror://gnu/zile/${name}.tar.gz";
|
||||||
|
sha256 = "1m20j5plpbx7rbk9rw3jsirip5gja5n8amqvg4mqs3pb28isx1fx";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ ncurses help2man ];
|
||||||
|
|
||||||
|
# Tests can't be run because most of them rely on the ability to
|
||||||
|
# fiddle with the terminal.
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "GNU Zile, a lightweight Emacs clone";
|
||||||
|
|
||||||
|
longDescription = ''
|
||||||
|
GNU Zile, which is a lightweight Emacs clone. Zile is short
|
||||||
|
for Zile Is Lossy Emacs. Zile has been written to be as
|
||||||
|
similar as possible to Emacs; every Emacs user should feel at
|
||||||
|
home.
|
||||||
|
|
||||||
|
Zile has all of Emacs's basic editing features: it is 8-bit
|
||||||
|
clean (though it currently lacks Unicode support), and the
|
||||||
|
number of editing buffers and windows is only limited by
|
||||||
|
available memory and screen space respectively. Registers,
|
||||||
|
minibuffer completion and auto fill are available. Function
|
||||||
|
and variable names are identical with Emacs's (except those
|
||||||
|
containing the word "emacs", which instead contain the word
|
||||||
|
"zile"!).
|
||||||
|
|
||||||
|
However, all of this is packed into a program which typically
|
||||||
|
compiles to about 130Kb.
|
||||||
|
'';
|
||||||
|
|
||||||
|
homepage = http://www.gnu.org/software/zile/;
|
||||||
|
|
||||||
|
license = "GPLv3+";
|
||||||
|
};
|
||||||
|
}
|
@ -4,11 +4,11 @@
|
|||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "gimp-2.6.4";
|
name = "gimp-2.6.5";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = ftp://ftp.gtk.org/pub/gimp/v2.6/gimp-2.6.4.tar.bz2;
|
url = ftp://ftp.gtk.org/pub/gimp/v2.6/gimp-2.6.5.tar.bz2;
|
||||||
sha256 = "1qlpszdaskh575xjibkxvvqxmgp8j7v1i1z2dnzz6gazni2pmll6";
|
sha256 = "08g5rc383ijcdfqr9ybrn6qazxqqfq0pndknsgh25z19bhghh2b2";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
@ -15,9 +15,7 @@ stdenv.mkDerivation rec {
|
|||||||
builder = writeScript (name + "-builder")
|
builder = writeScript (name + "-builder")
|
||||||
(textClosure localDefs [doConfigure doMakeInstall doForceShare doPropagate]);
|
(textClosure localDefs [doConfigure doMakeInstall doForceShare doPropagate]);
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "GPL Optical Character Recognition";
|
||||||
GPL Optical Character Recognition
|
|
||||||
";
|
|
||||||
inherit src;
|
inherit src;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -41,8 +41,9 @@ stdenv.mkDerivation rec {
|
|||||||
meta = {
|
meta = {
|
||||||
license = "GPL";
|
license = "GPL";
|
||||||
homepage = http://www.inkscape.org;
|
homepage = http://www.inkscape.org;
|
||||||
description = ''Inkscape is a feature-rich vector graphics editor
|
longDescription = ''
|
||||||
that edits files in the W3C SVG (Scalable Vector
|
Inkscape is a feature-rich vector graphics editor that edits
|
||||||
Graphics) file format.'';
|
files in the W3C SVG (Scalable Vector Graphics) file format.
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -29,13 +29,11 @@ let
|
|||||||
") [minInit doUnpack];
|
") [minInit doUnpack];
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "xscreensaver-"+version;
|
name = "xscreensaver-5.07";
|
||||||
builder = writeScript (name + "-builder")
|
builder = writeScript (name + "-builder")
|
||||||
(textClosure localDefs [preConfigure doConfigure doMakeInstall doForceShare doPropagate]);
|
(textClosure localDefs [preConfigure doConfigure doMakeInstall doForceShare doPropagate]);
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "A set of screensavers";
|
||||||
The X screensaver daemon. Run xscreensaver-demo to configure.
|
|
||||||
";
|
|
||||||
inherit src;
|
inherit src;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,61 +1,58 @@
|
|||||||
args: with args;
|
args: with args;
|
||||||
let inherit (args.composableDerivation) composableDerivation edf; in
|
let inherit (args.composableDerivation) composableDerivation edf; in
|
||||||
composableDerivation {
|
composableDerivation {} {
|
||||||
|
|
||||||
initial = {
|
name = "sox-14.0.0";
|
||||||
|
|
||||||
name = "sox-14.0.0";
|
src = args.fetchurl {
|
||||||
|
url = mirror://sourceforge/sox/sox-14.0.0.tar.gz;
|
||||||
src = args.fetchurl {
|
sha256 = "1l7v04nlvb96y0w9crvm6nq8g50yxp3bkv6nb1c205s982inlalc";
|
||||||
url = mirror://sourceforge/sox/sox-14.0.0.tar.gz;
|
|
||||||
sha256 = "1l7v04nlvb96y0w9crvm6nq8g50yxp3bkv6nb1c205s982inlalc";
|
|
||||||
};
|
|
||||||
|
|
||||||
flags =
|
|
||||||
# are these options of interest? We'll see
|
|
||||||
#--disable-fftw disable usage of FFTW
|
|
||||||
#--enable-debug enable debugging
|
|
||||||
#--disable-cpu-clip disable tricky cpu specific clipper
|
|
||||||
edf { name = "alsa"; enable = { buildInputs = [alsaLib]; }; }
|
|
||||||
// edf { name = "libao"; enable = { buildInputs = [libao]; }; }
|
|
||||||
// edf { name = "oss"; }
|
|
||||||
// edf { name = "sun_audio"; };
|
|
||||||
# These options should be autodetected by the configure script
|
|
||||||
/*
|
|
||||||
--without-sndfile Don't try to use libsndfile
|
|
||||||
--without-ogg Don't try to use Ogg Vorbis
|
|
||||||
--without-flac Don't try to use FLAC
|
|
||||||
--without-ffmpeg Don't try to use ffmpeg
|
|
||||||
--without-mad Don't try to use MAD (MP3 Audio Decoder)
|
|
||||||
--without-lame Don't try to use LAME (LAME Ain't an MP3 Encoder)
|
|
||||||
--without-amr-wb Don't try to use amr-wb
|
|
||||||
--without-amr-nb Don't try to use amr-nb
|
|
||||||
--without-samplerate Don't try to use libsamplerate (aka Secret Rabbit
|
|
||||||
Code)
|
|
||||||
--without-ladspa Don't try to use LADSPA
|
|
||||||
--with-ladspa-path Default search path for LADSPA plugins
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
cfg = {
|
|
||||||
ossSupport = false;
|
|
||||||
sun_audioSupport = false;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
flags =
|
||||||
optionals = [ "libsndfile" "libogg" "flac" "ffmpeg" "libmad" "lame"
|
# are these options of interest? We'll see
|
||||||
/* "amr-wb" "amr-nb" */
|
#--disable-fftw disable usage of FFTW
|
||||||
"libsamplerate" /* "ladspa" */ ];
|
#--enable-debug enable debugging
|
||||||
|
#--disable-cpu-clip disable tricky cpu specific clipper
|
||||||
|
edf { name = "alsa"; enable = { buildInputs = [alsaLib]; }; }
|
||||||
|
// edf { name = "libao"; enable = { buildInputs = [libao]; }; }
|
||||||
|
// edf { name = "oss"; }
|
||||||
|
// edf { name = "sun_audio"; };
|
||||||
|
# These options should be autodetected by the configure script
|
||||||
|
/*
|
||||||
|
--without-sndfile Don't try to use libsndfile
|
||||||
|
--without-ogg Don't try to use Ogg Vorbis
|
||||||
|
--without-flac Don't try to use FLAC
|
||||||
|
--without-ffmpeg Don't try to use ffmpeg
|
||||||
|
--without-mad Don't try to use MAD (MP3 Audio Decoder)
|
||||||
|
--without-lame Don't try to use LAME (LAME Ain't an MP3 Encoder)
|
||||||
|
--without-amr-wb Don't try to use amr-wb
|
||||||
|
--without-amr-nb Don't try to use amr-nb
|
||||||
|
--without-samplerate Don't try to use libsamplerate (aka Secret Rabbit
|
||||||
|
Code)
|
||||||
|
--without-ladspa Don't try to use LADSPA
|
||||||
|
--with-ladspa-path Default search path for LADSPA plugins
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
meta = {
|
cfg = {
|
||||||
description = "Sample Rate Converter for audio";
|
ossSupport = false;
|
||||||
homepage = http://www.mega-nerd.com/SRC/index.html;
|
sun_audioSupport = false;
|
||||||
# you can choose one of the following licenses:
|
};
|
||||||
license = [ "GPL"
|
|
||||||
{ url=http://www.mega-nerd.com/SRC/libsamplerate-cul.pdf;
|
|
||||||
name="libsamplerate Commercial Use License";
|
optionals = [ "libsndfile" "libogg" "flac" "ffmpeg" "libmad" "lame"
|
||||||
} ];
|
/* "amr-wb" "amr-nb" */
|
||||||
};
|
"libsamplerate" /* "ladspa" */ ];
|
||||||
|
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Sample Rate Converter for audio";
|
||||||
|
homepage = http://www.mega-nerd.com/SRC/index.html;
|
||||||
|
# you can choose one of the following licenses:
|
||||||
|
license = [ "GPL"
|
||||||
|
{ url=http://www.mega-nerd.com/SRC/libsamplerate-cul.pdf;
|
||||||
|
name="libsamplerate Commercial Use License";
|
||||||
|
} ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
args: with args;
|
args: with args;
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "djvulibre-3.5.19";
|
name = "djvulibre-3.5.19";
|
||||||
|
|
||||||
@ -7,15 +8,10 @@ stdenv.mkDerivation {
|
|||||||
sha256 = "0y6d9ka42llm7h64fc73s4wqcbxg31kallyfaarhkqsxyiaa3zsp";
|
sha256 = "0y6d9ka42llm7h64fc73s4wqcbxg31kallyfaarhkqsxyiaa3zsp";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [qt libX11 libjpeg libtiff libpng ghostscript zlib libungif
|
buildInputs = [qt libX11 libjpeg libtiff libpng ghostscript zlib libungif x11 mesa];
|
||||||
x11 mesa];
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "A library and viewer for the DJVU file format for scanned images";
|
||||||
DjVu libre - a library and a viewer for djvu format - compression for
|
|
||||||
scanned images.
|
|
||||||
";
|
|
||||||
homepage = http://djvu.sourceforge.net;
|
homepage = http://djvu.sourceforge.net;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
args: with args;
|
args: with args;
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "dmenu-3.8";
|
name = "dmenu-3.9";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://code.suckless.org/dl/tools/dmenu-3.8.tar.gz;
|
url = http://code.suckless.org/dl/tools/dmenu-3.9.tar.gz;
|
||||||
sha256 = "6d111a0e4d970df827f6e3c8ff60f5c96fdac4805f8100d508087859dc4f158b";
|
sha256 = "2370111e02c6a3863ea04376795fa72f9e41cdd2650b12f90e6a0c7d096e4b22";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ libX11 libXinerama ];
|
buildInputs = [ libX11 libXinerama ];
|
||||||
@ -13,7 +13,7 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "a generic, highly customizable, and efficient menu for the X Window System";
|
description = "a generic, highly customizable, and efficient menu for the X Window System";
|
||||||
homepage = http://www.suckless.org/programs/dmenu.html;
|
homepage = http://tools.suckless.org/dmenu;
|
||||||
license = "MIT";
|
license = "MIT";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -3,43 +3,41 @@ let edf = composableDerivation.edf;
|
|||||||
optionIncLib = name : attr : " -D${name}_INCLUDE_DIR=${__getAttr attr args}/incclude"
|
optionIncLib = name : attr : " -D${name}_INCLUDE_DIR=${__getAttr attr args}/incclude"
|
||||||
+ " -D${name}_LIBRARY=${__getAttr attr args}/lib "; # lib 64?
|
+ " -D${name}_LIBRARY=${__getAttr attr args}/lib "; # lib 64?
|
||||||
in
|
in
|
||||||
composableDerivation.composableDerivation {
|
composableDerivation.composableDerivation {} {
|
||||||
initial = {
|
|
||||||
|
|
||||||
buildInputs = [ gdal cmake qt flex bison proj geos x11 sqlite gsl];
|
buildInputs = [ gdal cmake qt flex bison proj geos x11 sqlite gsl];
|
||||||
cfgOption = [
|
cfgOption = [
|
||||||
# without this option it can't find sqlite libs yet (missing symbols..) (TODO)
|
# without this option it can't find sqlite libs yet (missing symbols..) (TODO)
|
||||||
"-DWITH_INTERNAL_SQLITE3=TRUE"
|
"-DWITH_INTERNAL_SQLITE3=TRUE"
|
||||||
];
|
];
|
||||||
|
|
||||||
name = "qgis-${version}";
|
name = "qgis-${version}";
|
||||||
|
|
||||||
# src = args.fetchsvn { url=https://svn.qgis.org/repos/qgis/trunk/qgis;
|
|
||||||
# md5="ac0560e0a2d4e6258c8639f1e9b56df3"; rev="7704"; };
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://download.osgeo.org/qgis/src/qgis_${version}.tar.gz";
|
|
||||||
sha256 = "17vqbld4wr9jyn1s5n0bkpaminsgc2dzcgdfk8ic168xydnwa7b3";
|
|
||||||
};
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "user friendly Open Source Geographic Information System";
|
|
||||||
homepage = http://www.qgis.org;
|
|
||||||
# you can choose one of the following licenses:
|
|
||||||
license = [ "GPL" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
phases = "unpackPhase buildPhase installPhase";
|
|
||||||
buildPhase = ''pwd;echo XXXXXXXXX; VERBOSE=1 cmake -DCMAKE_INSTALL_PREFIX=$out ''${cfgOption} ..'';
|
|
||||||
|
|
||||||
postUnpack = ''
|
|
||||||
export CMAKE_SYSTEM_LIBRARY_PATH=
|
|
||||||
for i in $buildInputs $propagatedBuildInputs; do
|
|
||||||
CMAKE_SYSTEM_LIBRARY_PATH=$i/lib:$CMAKE_SYSTEM_LIBRARY_PATH
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
|
|
||||||
#configurePhase="./autogen.sh --prefix=\$out --with-gdal=\$gdal/bin/gdal-config --with-qtdir=\$qt";
|
|
||||||
# buildPhases="unpackPhase buildPhase";
|
|
||||||
|
|
||||||
|
# src = args.fetchsvn { url=https://svn.qgis.org/repos/qgis/trunk/qgis;
|
||||||
|
# md5="ac0560e0a2d4e6258c8639f1e9b56df3"; rev="7704"; };
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://download.osgeo.org/qgis/src/qgis_${version}.tar.gz";
|
||||||
|
sha256 = "17vqbld4wr9jyn1s5n0bkpaminsgc2dzcgdfk8ic168xydnwa7b3";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "user friendly Open Source Geographic Information System";
|
||||||
|
homepage = http://www.qgis.org;
|
||||||
|
# you can choose one of the following licenses:
|
||||||
|
license = [ "GPL" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
phases = "unpackPhase buildPhase installPhase";
|
||||||
|
buildPhase = ''pwd;echo XXXXXXXXX; VERBOSE=1 cmake -DCMAKE_INSTALL_PREFIX=$out ''${cfgOption} ..'';
|
||||||
|
|
||||||
|
postUnpack = ''
|
||||||
|
export CMAKE_SYSTEM_LIBRARY_PATH=
|
||||||
|
for i in $buildInputs $propagatedBuildInputs; do
|
||||||
|
CMAKE_SYSTEM_LIBRARY_PATH=$i/lib:$CMAKE_SYSTEM_LIBRARY_PATH
|
||||||
|
done
|
||||||
|
'';
|
||||||
|
|
||||||
|
#configurePhase="./autogen.sh --prefix=\$out --with-gdal=\$gdal/bin/gdal-config --with-qtdir=\$qt";
|
||||||
|
# buildPhases="unpackPhase buildPhase";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -10,13 +10,15 @@
|
|||||||
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation rec {
|
||||||
name = "firefox-3.0.6";
|
name = "firefox-${version}";
|
||||||
|
|
||||||
|
version = "3.0.7";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
# Don't forget to update xulrunner.nix as well!
|
# Don't forget to update xulrunner.nix as well!
|
||||||
url = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.0.6/source/firefox-3.0.6-source.tar.bz2;
|
url = "http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${version}/source/firefox-${version}-source.tar.bz2";
|
||||||
sha1 = "e2845c07b507308664f6f39086a050b2773382fb";
|
sha1 = "03c078d9c2d047d7cdc25f7823c6e647cb8d8f8b";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
version = "1.9.0.6"; # this attribute is used by other packages
|
version = "1.9.0.7"; # this attribute is used by other packages
|
||||||
|
|
||||||
in
|
in
|
||||||
|
|
||||||
@ -19,8 +19,8 @@ stdenv.mkDerivation {
|
|||||||
name = "xulrunner-${version}";
|
name = "xulrunner-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.0.6/source/firefox-3.0.6-source.tar.bz2;
|
url = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.0.7/source/firefox-3.0.7-source.tar.bz2;
|
||||||
sha1 = "e2845c07b507308664f6f39086a050b2773382fb";
|
sha1 = "03c078d9c2d047d7cdc25f7823c6e647cb8d8f8b";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
|
@ -3,6 +3,16 @@ source $stdenv/setup
|
|||||||
dontStrip=1
|
dontStrip=1
|
||||||
dontPatchELF=1
|
dontPatchELF=1
|
||||||
|
|
||||||
|
unpackPhase() {
|
||||||
|
tar xvzf $src;
|
||||||
|
for a in *; do
|
||||||
|
if [ -d $a ]; then
|
||||||
|
cd $a
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
installPhase() {
|
installPhase() {
|
||||||
ensureDir $out/lib/mozilla/plugins
|
ensureDir $out/lib/mozilla/plugins
|
||||||
cp -p libflashplayer.so $out/lib/mozilla/plugins
|
cp -p libflashplayer.so $out/lib/mozilla/plugins
|
||||||
|
@ -1,15 +1,20 @@
|
|||||||
{stdenv, fetchurl, zlib, alsaLib, curl}:
|
{stdenv, fetchurl, zlib, alsaLib, curl}:
|
||||||
|
|
||||||
assert stdenv.system == "i686-linux";
|
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "flashplayer-10.0.12.36";
|
name = if (stdenv.system == "x86_64-linux") then
|
||||||
|
"flashplayer-10.0.22.87"
|
||||||
|
else
|
||||||
|
"flashplayer-10.0.22";
|
||||||
|
|
||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
|
|
||||||
src = fetchurl {
|
src = if (stdenv.system == "x86_64-linux") then fetchurl {
|
||||||
|
url = http://download.macromedia.com/pub/labs/flashplayer10/libflashplayer-10.0.22.87.linux-x86_64.so.tar.gz;
|
||||||
|
sha256 = "eac1d05aa96036819fe8f14f293a2ccc9601e1e32e08ec33e6ed9ed698e76145";
|
||||||
|
}
|
||||||
|
else fetchurl {
|
||||||
url = http://fpdownload.macromedia.com/get/flashplayer/current/install_flash_player_10_linux.tar.gz;
|
url = http://fpdownload.macromedia.com/get/flashplayer/current/install_flash_player_10_linux.tar.gz;
|
||||||
sha256 = "cd3e8fbb05da4a5303f958cb627bc7f3845dd86576a96ab157effc4f0ae65e5d";
|
sha256 = "cd29f166c87fecc943e88fe951bb61c56728fab12b4bf343badafa73ea95394e";
|
||||||
};
|
};
|
||||||
|
|
||||||
inherit zlib alsaLib;
|
inherit zlib alsaLib;
|
||||||
|
@ -1,43 +1,46 @@
|
|||||||
{stdenv, fetchurl, pidgin, imagemagick, ghostscript,
|
{ stdenv, fetchurl, pidgin, imagemagick, ghostscript
|
||||||
pkgconfig, glib, gtk, texLive}:
|
, pkgconfig, glib, gtk, texLive
|
||||||
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "pidgin-latex";
|
name = "pidgin-latex";
|
||||||
|
|
||||||
src =
|
src = fetchurl {
|
||||||
fetchurl {
|
url = http://tapas.affenbande.org/pidgin-latex/pidgin-latex-0.9.tgz;
|
||||||
url = http://tapas.affenbande.org/pidgin-latex/pidgin-latex-0.9.tgz;
|
sha256 = "1yqd3qgxd3n8hm60qg7yv7j1crr6f3d4yrdpgwdpw2pyf92p8nxp";
|
||||||
sha256 = "1yqd3qgxd3n8hm60qg7yv7j1crr6f3d4yrdpgwdpw2pyf92p8nxp";
|
};
|
||||||
};
|
|
||||||
|
|
||||||
preBuild = "
|
preBuild = ''
|
||||||
sed -e '/^PREFIX/d' -i Makefile ;
|
sed -e '/^PREFIX/d' -i Makefile ;
|
||||||
sed -e 's@/usr/bin/latex@${texLive}/bin/pdflatex@g' -i pidgin-latex.h
|
sed -e 's@/usr/bin/latex@${texLive}/bin/pdflatex@g' -i pidgin-latex.h
|
||||||
sed -e 's@/usr/bin/convert@${imagemagick}/bin/convert@g' -i pidgin-latex.h
|
sed -e 's@/usr/bin/convert@${imagemagick}/bin/convert@g' -i pidgin-latex.h
|
||||||
sed -e 's@.*convert_path.*@const gchar *convert = CONVERT_PATH;@'
|
sed -e 's@.*convert_path.*@const gchar *convert = CONVERT_PATH;@'
|
||||||
sed -e 's@.*latex_path.*@const gchar *convert = LATEX_PATH;@'
|
sed -e 's@.*latex_path.*@const gchar *convert = LATEX_PATH;@'
|
||||||
sed -e 's/%s.dvi/%s.pdf/' -i pidgin-latex.c
|
sed -e 's/%s.dvi/%s.pdf/' -i pidgin-latex.c
|
||||||
sed -e 's/latex_system\(.*\)FALSE/latex_system\1TRUE/' -i pidgin-latex.c
|
sed -e 's/latex_system\(.*\)FALSE/latex_system\1TRUE/' -i pidgin-latex.c
|
||||||
";
|
'';
|
||||||
|
|
||||||
makeFlags="PREFIX=\$(out)";
|
makeFlags = "PREFIX=\$(out)";
|
||||||
|
|
||||||
preInstall="mkdir -p \${out}/lib/pidgin \${out}/bin";
|
preInstall = "mkdir -p $out/lib/pidgin $out/bin";
|
||||||
|
|
||||||
postInstall = "mkdir -p \${out}/share/pidgin-latex;
|
postInstall = ''
|
||||||
ln -s \${out}/lib/pidgin/pidgin-latex.so \${out}/share/pidgin-latex/";
|
mkdir -p $out/share/pidgin-latex
|
||||||
|
ln -s $out/lib/pidgin/pidgin-latex.so $out/share/pidgin-latex/
|
||||||
|
'';
|
||||||
|
|
||||||
buildInputs = [pidgin imagemagick ghostscript pkgconfig glib gtk texLive];
|
buildInputs = [pidgin imagemagick ghostscript pkgconfig glib gtk texLive];
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
longDescription = ''
|
||||||
Pidgin-LaTeX is a pidgin plugin that cuts everything inside \$\$ .. \$\$
|
Pidgin-LaTeX is a pidgin plugin that cuts everything inside \$\$
|
||||||
and feeds to LaTeX. A bit of conversion (automated, of course) - and you
|
.. \$\$ and feeds to LaTeX. A bit of conversion (automated, of
|
||||||
see every formula that occurs in conversation in pretty graphical form.
|
course) - and you see every formula that occurs in conversation
|
||||||
There are some glitches - when a formula fails to compile, you can see
|
in pretty graphical form. There are some glitches - when a
|
||||||
just previous formula..
|
formula fails to compile, you can see just previous formula..
|
||||||
Enable it for user by linking to ~/.purple/plugins - from
|
Enable it for user by linking to ~/.purple/plugins - from
|
||||||
sw/share/pidgin-latex , not from store of course.
|
sw/share/pidgin-latex , not from store of course.
|
||||||
";
|
'';
|
||||||
homepage = http://tapas.affenbande.org/wordpress/?page_id=70;
|
homepage = http://tapas.affenbande.org/wordpress/?page_id=70;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -20,10 +20,10 @@
|
|||||||
} :
|
} :
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "pidgin-2.5.4";
|
name = "pidgin-2.5.5";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = mirror://sourceforge/pidgin/pidgin-2.5.4.tar.bz2;
|
url = mirror://sourceforge/pidgin/pidgin-2.5.5.tar.bz2;
|
||||||
sha256 = "0qqvv9x5p2yxmw57sj3hvc10vxpd9mqv61w1pk97qcwbggwvxgn6";
|
sha256 = "1s13fzxa62mrxah6khsnpywmw1fknghph1krgwfvcs18kjwi6nnb";
|
||||||
};
|
};
|
||||||
|
|
||||||
inherit nss ncurses;
|
inherit nss ncurses;
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
{stdenv, fetchurl, unzip}:
|
{stdenv, fetchurl, unzip}:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "chatzilla-0.9.83";
|
name = "chatzilla-0.9.84";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
# Obtained from http://chatzilla.rdmsoft.com/xulrunner/.
|
# Obtained from http://chatzilla.rdmsoft.com/xulrunner/.
|
||||||
url = http://chatzilla.rdmsoft.com/xulrunner/download/chatzilla-0.9.83-xr.zip;
|
url = http://chatzilla.rdmsoft.com/xulrunner/download/chatzilla-0.9.84-xr.zip;
|
||||||
sha256 = "0dzk0k9gmzy7sqbiszakd69pjr4h6pfdsb3s6zbx4gc46z4n3shx";
|
sha256 = "0v1xakdgjjwwh0azxbh7y9yi99gcn0d37sfxrdzw78lbag3fh0k8";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [unzip];
|
buildInputs = [unzip];
|
||||||
|
@ -0,0 +1,105 @@
|
|||||||
|
{ stdenv, fetchurl, pkgconfig, gtk, pango, perl, python, zip, libIDL
|
||||||
|
, libjpeg, zlib, cairo, dbus, dbus_glib, bzip2
|
||||||
|
, freetype, fontconfig, xulrunner
|
||||||
|
, autoconf , libpng , alsaLib, sqlite, patchelf
|
||||||
|
|
||||||
|
, # If you want the resulting program to call itself "Thunderbird"
|
||||||
|
# instead of "Mail", enable this option. However, those
|
||||||
|
# binaries may not be distributed without permission from the
|
||||||
|
# Mozilla Foundation, see
|
||||||
|
# http://www.mozilla.org/foundation/trademarks/.
|
||||||
|
enableOfficialBranding ? false
|
||||||
|
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "thunderbird-3.0beta2";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "ftp://ftp.mozilla.org/pub/thunderbird/releases/3.0b2/source/thunderbird-3.0b2-source.tar.bz2";
|
||||||
|
sha256 = "17mlp0x6sf1v9w8vraln7mr566gvk84rxvxiwzhbdj2p0475zjqr";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
pkgconfig gtk perl zip libIDL libjpeg zlib cairo bzip2
|
||||||
|
python dbus dbus_glib pango freetype fontconfig autoconf
|
||||||
|
libpng alsaLib sqlite patchelf
|
||||||
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = [xulrunner];
|
||||||
|
|
||||||
|
preUnpack = "mkdir thunderbird; cd thunderbird;";
|
||||||
|
setSourceRoot = "export sourceRoot=.;";
|
||||||
|
preConfigure = ''
|
||||||
|
for i in $(find . -name configure.in); do echo $i; (cd $(dirname $i); autoconf || true; ); done;
|
||||||
|
XUL_SDK=$(echo ${xulrunner}/lib/xulrunner-devel-*/)
|
||||||
|
export NIX_CFLAGS_COMPILE="''${NIX_CFLAGS_COMPILE} -I$XUL_SDK/include";
|
||||||
|
export NIX_CFLAGS_COMPILE="''${NIX_CFLAGS_COMPILE} -I$(echo ${xulrunner}/include/xulrunner-*/stable)";
|
||||||
|
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE";
|
||||||
|
export NIX_LDFLAGS="''${NIX_LDFLAGS} -L$XUL_SDK/lib -L$XUL_SDK/sdk/lib";
|
||||||
|
export NIX_LDFLAGS="$NIX_LDFLAGS -L${xulrunner}/lib/xulrunner-${xulrunner.version}";
|
||||||
|
export NIX_LDFLAGS="$NIX_LDFLAGS -lxpcomglue -lxpcomglue_s -lxul -lnss -lmozjs -lsqlite3";
|
||||||
|
echo NIX_CFLAGS_COMPILE: $NIX_CFLAGS_COMPILE
|
||||||
|
echo NIX_LDFLAGS: $NIX_LDFLAGS
|
||||||
|
for i in $(find $(pwd) -wholename '*/public/*.idl' -exec dirname '{}' ';' | sort | uniq); do
|
||||||
|
export XPIDL_FLAGS="$XPIDL_FLAGS -I$i";
|
||||||
|
done;
|
||||||
|
echo $XPIDL_FLAGS
|
||||||
|
|
||||||
|
sed -e "s@\$(XPIDL_FLAGS)@\$(XPIDL_FLAGS) $XPIDL_FLAGS@" -i config/rules.mk
|
||||||
|
'';
|
||||||
|
postConfigure = ''
|
||||||
|
(cd mozilla/nsprpub; ./configure --prefix=$out/XUL_SDK; )
|
||||||
|
'';
|
||||||
|
preBuild = ''
|
||||||
|
for i in $(find . -name autoconf.mk); do echo $i; sed -e 's@-Wl,-rpath-link,$(PREFIX)/lib@@' -i $i; done
|
||||||
|
make -C mozilla/config nsinstall
|
||||||
|
mkdir -p $out/libexec/mozilla/nsinstall
|
||||||
|
mv mozilla/config/nsinstall $out/libexec/mozilla/nsinstall/nsinstall
|
||||||
|
cat > mozilla/config/nsinstall <<EOF
|
||||||
|
#! /bin/sh
|
||||||
|
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${sqlite}/lib:${xulrunner}/lib/xulrunner-${xulrunner.version}"
|
||||||
|
$out/libexec/mozilla/nsinstall/nsinstall "\$@"
|
||||||
|
EOF
|
||||||
|
chmod a+x mozilla/config/nsinstall
|
||||||
|
'';
|
||||||
|
|
||||||
|
configureFlags = [
|
||||||
|
"--enable-application=mail"
|
||||||
|
"--enable-optimize"
|
||||||
|
"--disable-debug"
|
||||||
|
"--with-system-jpeg"
|
||||||
|
"--with-system-zlib"
|
||||||
|
"--with-system-bz2"
|
||||||
|
#"--with-system-png" # <-- "--with-system-png won't work because the system's libpng doesn't have APNG support"
|
||||||
|
"--enable-system-cairo"
|
||||||
|
#"--enable-system-sqlite" # <-- this seems to be discouraged
|
||||||
|
"--disable-crashreporter"
|
||||||
|
"--with-libxul-sdk=${xulrunner}/lib/xulrunner-devel-${xulrunner.version}"
|
||||||
|
"--enable-extensions=default"
|
||||||
|
]
|
||||||
|
++ (if enableOfficialBranding then ["--enable-official-branding"] else []);
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
# Strip some more stuff.
|
||||||
|
strip -S $out/lib/*/* || true
|
||||||
|
|
||||||
|
libDir=$(cd $out/lib && ls -d thunderbird-[0-9]*)
|
||||||
|
test -n "$libDir"
|
||||||
|
|
||||||
|
ln -s ${xulrunner}/lib/xulrunner-${xulrunner.version} $out/lib/$libDir/xulrunner
|
||||||
|
|
||||||
|
# Register extensions etc. !!! is this needed anymore?
|
||||||
|
echo "running thunderbird -register..."
|
||||||
|
$out/bin/thunderbird -register
|
||||||
|
''; # */
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Mozilla Thunderbird, a full-featured email client";
|
||||||
|
homepage = http://www.mozilla.com/en-US/thunderbird/;
|
||||||
|
};
|
||||||
|
|
||||||
|
passthru = {
|
||||||
|
inherit gtk;
|
||||||
|
};
|
||||||
|
}
|
@ -23,9 +23,7 @@ stdenv.mkDerivation rec {
|
|||||||
(textClosure localDefs
|
(textClosure localDefs
|
||||||
[doScons doForceShare doPropagate]);
|
[doScons doForceShare doPropagate]);
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "Linux DC++ - Direct Connect client";
|
||||||
Linux DC++ - Direct Connect client
|
|
||||||
";
|
|
||||||
inherit src;
|
inherit src;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,21 +1,28 @@
|
|||||||
{stdenv, fetchurl, cpio}:
|
{stdenv, fetchurl, cpio}:
|
||||||
|
|
||||||
# Note: may need the C-libs at ftp://ftp.ncbi.nih.gov/toolbox/ncbi_tools++/2008/Mar_17_2008/NCBI_C_Toolkit/ncbi_c--Mar_17_2008.tar.gz (or split out?)
|
# The NCBI package only builds on 32bits - on 64bits it breaks because
|
||||||
|
# of position dependent code. Debian packagers have written replacement
|
||||||
|
# make files(!). Either we use these, or negotiate a version which can
|
||||||
|
# be pushed upstream to NCBI.
|
||||||
|
#
|
||||||
|
# Another note: you may want the older and deprecated C-libs at ftp://ftp.ncbi.nih.gov/toolbox/ncbi_tools++/2008/Mar_17_2008/NCBI_C_Toolkit/ncbi_c--Mar_17_2008.tar.gz
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "ncbi_cxx";
|
name = "ncbi_tools";
|
||||||
ncbi_version = "Mar_17_2008";
|
ncbi_version="Dec_31_2008";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "ftp://ftp.ncbi.nih.gov/toolbox/ncbi_tools++/2008/${ncbi_version}/ncbi_cxx--${ncbi_version}.tar.gz";
|
url = "ftp://ftp.ncbi.nih.gov/toolbox/ncbi_tools++/2008/${ncbi_version}/ncbi_cxx--${ncbi_version}.tar.gz";
|
||||||
sha256 = "0mxbmz6gndallz8l5jdslq6illa3hgf31xi2yb984mqm9in485as";
|
sha256 = "1b2v0dcdqn3bysgdkj57sxmd6s0hc9wpnxssviz399g6plhxggbr";
|
||||||
};
|
};
|
||||||
|
|
||||||
configureFlags = "--without-debug --with-bin-release --with-dll --without-static";
|
configureFlags = "--without-debug --with-bin-release --with-dll --without-static";
|
||||||
|
# PIC flag (position independent code for shared libraries)
|
||||||
|
NIX_CXXFLAGS_COMPILE = if stdenv.system == "x86_64-linux" then "-fPIC" else "";
|
||||||
buildInputs = [cpio];
|
buildInputs = [cpio];
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = ''NCBI Bioinformatics toolbox (incl. blast)'';
|
description = ''NCBI Bioinformatics toolbox (incl. BLAST)'';
|
||||||
longDescription = ''The NCBI Bioinformatics toolsbox, including command-line utilties, libraries and include files. No X11 support (at this point).'';
|
longDescription = ''The NCBI Bioinformatics toolsbox, including command-line utilties, libraries and include files. No X11 support'';
|
||||||
homepage = http://www.ncbi.nlm.nih.gov/IEB/ToolBox/;
|
homepage = http://www.ncbi.nlm.nih.gov/IEB/ToolBox/;
|
||||||
license = "GPL";
|
license = "GPL";
|
||||||
priority = "5"; # zlib.so gives a conflict with zlib
|
priority = "5"; # zlib.so gives a conflict with zlib
|
||||||
|
@ -1,10 +1,11 @@
|
|||||||
{stdenv, fetchurl}:
|
{stdenv, fetchurl}:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation rec {
|
||||||
name = "paml-4.1";
|
version = "4.2a";
|
||||||
|
name = "paml-${version}";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://abacus.gene.ucl.ac.uk/software/paml4.1.tar.gz;
|
url = "http://abacus.gene.ucl.ac.uk/software/paml${version}.tar.gz";
|
||||||
sha256 = "1w8ih7h9xfbnmzmbql5l1hjkgzp17wjvxjfgc76zbcsb61b0ls34";
|
sha256 = "0yywyrjgxrpavp50n00l01pl90b7pykgb2k53yrlykz9dnf583pb";
|
||||||
};
|
};
|
||||||
|
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
|
@ -21,8 +21,7 @@ stdenv.mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = ''GNU Arch (aka. `tla'), a distributed revision
|
description = "GNU Arch (aka. `tla'), a distributed revision control system";
|
||||||
control system.'';
|
|
||||||
homepage = http://www.gnu.org/software/gnu-arch/;
|
homepage = http://www.gnu.org/software/gnu-arch/;
|
||||||
license = "GPL";
|
license = "GPL";
|
||||||
};
|
};
|
||||||
|
@ -17,11 +17,12 @@ stdenv.mkDerivation rec {
|
|||||||
installPhase = "make install prefix=$out";
|
installPhase = "make install prefix=$out";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = ''CVSps is a program for generating `patchset' information
|
longDescription = ''
|
||||||
from a CVS repository. A patchset in this case is
|
CVSps is a program for generating `patchset' information from a
|
||||||
defined as a set of changes made to a collection of
|
CVS repository. A patchset in this case is defined as a set of
|
||||||
files, and all committed at the same time (using a single
|
changes made to a collection of files, and all committed at the
|
||||||
"cvs commit" command).'';
|
same time (using a single "cvs commit" command).
|
||||||
|
'';
|
||||||
homepage = http://www.cobite.com/cvsps/;
|
homepage = http://www.cobite.com/cvsps/;
|
||||||
license = "GPLv2";
|
license = "GPLv2";
|
||||||
};
|
};
|
||||||
|
@ -63,6 +63,24 @@ rec {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
tig = stdenv.mkDerivation {
|
||||||
|
name = "tig-0.14.1";
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://jonas.nitro.dk/tig/releases/tig-0.14.1.tar.gz";
|
||||||
|
sha256 = "1a8mi1pv36v67n31vs95gcibkifnqq5s1x69lz1cz0218yv9s73r";
|
||||||
|
};
|
||||||
|
buildInputs = [ncurses asciidoc xmlto docbook_xsl];
|
||||||
|
installPhase = ''
|
||||||
|
make install
|
||||||
|
make install-doc
|
||||||
|
'';
|
||||||
|
meta = {
|
||||||
|
description = "console git repository browser that additionally can act as a pager for output from various git commands";
|
||||||
|
homepage = http://jonas.nitro.dk/tig/;
|
||||||
|
license = "GPLv2";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
hg2git = import ./hg2git {
|
hg2git = import ./hg2git {
|
||||||
inherit fetchurl stdenv mercurial coreutils git makeWrapper;
|
inherit fetchurl stdenv mercurial coreutils git makeWrapper;
|
||||||
inherit (bleedingEdgeRepos) sourceByName;
|
inherit (bleedingEdgeRepos) sourceByName;
|
||||||
|
@ -10,14 +10,14 @@ assert svnSupport -> (subversion != null && perlLibs != [] && subversion.perlBin
|
|||||||
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "git-1.6.0.4";
|
name = "git-1.6.1.3";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://kernel/software/scm/git/${name}.tar.bz2";
|
url = "mirror://kernel/software/scm/git/${name}.tar.bz2";
|
||||||
sha256 = "0q5jnix65zn58dhd9xc3sjpamli0lh1bnsz1b9riwwicgwssrk7q";
|
sha256 = "aef4814634ac9ce8119fabc4bd1c363bb946f73ed34475a4baaad09a3fb23682";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./docbook2texi.patch ];
|
patches = [ ./docbook2texi.patch ./fill-paragraph.patch ];
|
||||||
|
|
||||||
buildInputs = [curl openssl zlib expat gettext cpio makeWrapper]
|
buildInputs = [curl openssl zlib expat gettext cpio makeWrapper]
|
||||||
++ # documentation tools
|
++ # documentation tools
|
||||||
|
@ -0,0 +1,11 @@
|
|||||||
|
diff --git a/contrib/emacs/git.el b/contrib/emacs/git.el
|
||||||
|
index 3c37d0d..e314c44 100644
|
||||||
|
--- a/contrib/emacs/git.el
|
||||||
|
+++ b/contrib/emacs/git.el
|
||||||
|
@@ -1331,6 +1331,7 @@ Return the list of files that haven't been handled."
|
||||||
|
(log-edit-diff-function . git-log-edit-diff)) buffer)
|
||||||
|
(log-edit 'git-do-commit nil 'git-log-edit-files buffer))
|
||||||
|
(setq font-lock-keywords (font-lock-compile-keywords git-log-edit-font-lock-keywords))
|
||||||
|
+ (setq paragraph-separate (concat (regexp-quote git-log-msg-separator) "$\\|Author: \\|Date: \\|Merge: \\|Signed-off-by: \\|\f\\|[ ]*$"))
|
||||||
|
(setq buffer-file-coding-system coding-system)
|
||||||
|
(re-search-forward (regexp-quote (concat git-log-msg-separator "\n")) nil t))))
|
@ -4,8 +4,6 @@
|
|||||||
, alsa ? null, libX11, libXv ? null, libtheora ? null, libcaca ? null
|
, alsa ? null, libX11, libXv ? null, libtheora ? null, libcaca ? null
|
||||||
, libXinerama ? null, libXrandr ? null, libdvdnav ? null
|
, libXinerama ? null, libXrandr ? null, libdvdnav ? null
|
||||||
, cdparanoia ? null, cddaSupport ? true
|
, cdparanoia ? null, cddaSupport ? true
|
||||||
, extraBuildInputs ? []
|
|
||||||
, extraConfigureFlags ? ""
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert alsaSupport -> alsa != null;
|
assert alsaSupport -> alsa != null;
|
||||||
@ -30,53 +28,42 @@ let
|
|||||||
in
|
in
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "MPlayer-1.0rc2";
|
name = "MPlayer-1.0rc2-r28450";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://www1.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc2.tar.bz2;
|
url = mirror://gentoo/distfiles/mplayer-1.0_rc2_p28450.tar.bz2;
|
||||||
sha1 = "e9b496f3527c552004ec6d01d6b43f196b43ce2d";
|
sha256 = "0cbils58mq20nablywgjfpfx2pzjgnhin23sb8k1s5h2rxgvi3vf";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs =
|
||||||
x11 libXv freetype zlib
|
[x11 libXv freetype zlib]
|
||||||
(if alsaSupport then alsa else null)
|
++ stdenv.lib.optional alsaSupport alsa
|
||||||
(if xvSupport then libXv else null)
|
++ stdenv.lib.optional xvSupport libXv
|
||||||
(if theoraSupport then libtheora else null)
|
++ stdenv.lib.optional theoraSupport libtheora
|
||||||
(if cacaSupport then libcaca else null)
|
++ stdenv.lib.optional cacaSupport libcaca
|
||||||
(if xineramaSupport then libXinerama else null)
|
++ stdenv.lib.optional xineramaSupport libXinerama
|
||||||
(if randrSupport then libXrandr else null)
|
++ stdenv.lib.optional randrSupport libXrandr
|
||||||
(if dvdnavSupport then libdvdnav else null)
|
++ stdenv.lib.optionals dvdnavSupport [libdvdnav libdvdnav.libdvdread]
|
||||||
(if cddaSupport then cdparanoia else null)
|
++ stdenv.lib.optional cddaSupport cdparanoia;
|
||||||
]
|
|
||||||
++ extraBuildInputs
|
|
||||||
;
|
|
||||||
|
|
||||||
configureFlags = "
|
configureFlags = ''
|
||||||
${if cacaSupport then "--enable-caca" else "--disable-caca"}
|
${if cacaSupport then "--enable-caca" else "--disable-caca"}
|
||||||
${if dvdnavSupport then "--enable-dvdnav" else ""}
|
${if dvdnavSupport then "--enable-dvdnav --enable-dvdread --disable-dvdread-internal" else ""}
|
||||||
--win32codecsdir=${win32codecs}
|
--win32codecsdir=${win32codecs}
|
||||||
--realcodecsdir=${rp9codecs}
|
--realcodecsdir=${rp9codecs}
|
||||||
--enable-runtime-cpudetection
|
--enable-runtime-cpudetection
|
||||||
--enable-x11 --with-extraincdir=${libX11}/include
|
--enable-x11 --with-extraincdir=${libX11}/include
|
||||||
--disable-xanim
|
--disable-xanim
|
||||||
--disable-ivtv
|
--disable-ivtv
|
||||||
"
|
'';
|
||||||
+ extraConfigureFlags
|
|
||||||
;
|
|
||||||
|
|
||||||
NIX_LDFLAGS = "-lX11 -lXext " # !!! hack, necessary to get libX11/Xext in the RPATH
|
NIX_LDFLAGS = "-lX11 -lXext";
|
||||||
+ (if dvdnavSupport then "-ldvdnav" else "");
|
|
||||||
|
|
||||||
# Provide a reasonable standard font. Maybe we should symlink here.
|
# Provide a reasonable standard font. Maybe we should symlink here.
|
||||||
postInstall = "cp ${freefont_ttf}/share/fonts/truetype/FreeSans.ttf $out/share/mplayer/subfont.ttf";
|
postInstall = ''
|
||||||
|
ensureDir $out/share/mplayer
|
||||||
patches = [
|
cp ${freefont_ttf}/share/fonts/truetype/FreeSans.ttf $out/share/mplayer/subfont.ttf
|
||||||
# These fix MPlayer's aspect ratio when run in a screen rotated with
|
'';
|
||||||
# Xrandr.
|
|
||||||
# See: http://itdp.de/~itdp/html/mplayer-dev-eng/2005-08/msg00427.html
|
|
||||||
#./mplayer-aspect.patch
|
|
||||||
#./mplayer-pivot.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "A movie player that supports many video formats";
|
description = "A movie player that supports many video formats";
|
||||||
|
@ -1,8 +1,16 @@
|
|||||||
{stdenv, fetchurl}: stdenv.mkDerivation {
|
{stdenv, fetchurl}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
name = "MPlayer-codecs-essential-20071007";
|
name = "MPlayer-codecs-essential-20071007";
|
||||||
|
|
||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://www2.mplayerhq.hu/MPlayer/releases/codecs/essential-20071007.tar.bz2;
|
url = http://www2.mplayerhq.hu/MPlayer/releases/codecs/essential-20071007.tar.bz2;
|
||||||
sha256 = "18vls12n12rjw0mzw4pkp9vpcfmd1c21rzha19d7zil4hn7fs2ic";
|
sha256 = "18vls12n12rjw0mzw4pkp9vpcfmd1c21rzha19d7zil4hn7fs2ic";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
license = "unfree";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -5,13 +5,13 @@
|
|||||||
, glib, gtk, x11, ming, dejagnu, python
|
, glib, gtk, x11, ming, dejagnu, python
|
||||||
, lib, makeWrapper }:
|
, lib, makeWrapper }:
|
||||||
|
|
||||||
let version = "0.8.4"; in
|
let version = "0.8.5"; in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "gnash-${version}";
|
name = "gnash-${version}";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://gnu/gnash/${version}/${name}.tar.bz2";
|
url = "mirror://gnu/gnash/${version}/${name}.tar.bz2";
|
||||||
sha256 = "094jky77ghdisq17z742cwn3g9ckm937p8h5jbji5rrdqbdlpzkg";
|
sha256 = "1cqhnbp99rb0n4x2bsz8wwh7vvc2kclxc1wmrl5vaapd9qhp5whn";
|
||||||
};
|
};
|
||||||
|
|
||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
|
@ -1,31 +1,28 @@
|
|||||||
{ xvSupport ? true
|
{ stdenv, fetchurl, perl, xlibs, libdvdnav
|
||||||
, stdenv, fetchurl, perl, x11, libXv, wxGTK
|
, zlib, a52dec, libmad, faad2, ffmpeg, alsa
|
||||||
, libdvdread, libdvdnav, libdvdcss
|
, pkgconfig, dbus, hal, fribidi, qt4, freefont_ttf
|
||||||
, zlib, mpeg2dec, a52dec, libmad, ffmpeg, alsa
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert libdvdread.libdvdcss == libdvdcss;
|
|
||||||
assert xvSupport -> libXv != null;
|
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
name = "vlc-0.8.6h";
|
name = "vlc-0.9.8a";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://download.videolan.org/pub/videolan/vlc/0.8.6h/vlc-0.8.6h.tar.bz2;
|
url = http://download.videolan.org/pub/videolan/vlc/0.9.8a/vlc-0.9.8a.tar.bz2;
|
||||||
sha256 = "08bj6ndxj0f7jdsif43535qyavpy13wni93z7c2790i2d748gvah";
|
sha256 = "0kw2d7yh8rzb61j1q2cvnjinj1wxc9a7smxl7ckw1vwh6y02jz0r";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
perl x11 wxGTK
|
perl xlibs.xlibs xlibs.libXv zlib a52dec libmad faad2 ffmpeg
|
||||||
zlib mpeg2dec a52dec libmad ffmpeg alsa
|
alsa libdvdnav libdvdnav.libdvdread pkgconfig dbus hal fribidi qt4
|
||||||
libdvdread # <- for "simple" DVD playback
|
];
|
||||||
libdvdnav libdvdcss # <- for DVD playback with menus
|
|
||||||
] ++ stdenv.lib.optional xvSupport libXv;
|
|
||||||
|
|
||||||
# Ensure that libdvdcss will be found without having to set LD_LIBRARY_PATH.
|
configureFlags = "--enable-alsa --disable-glx --disable-remoteosd --enable-faad";
|
||||||
NIX_LDFLAGS = "-ldvdcss";
|
|
||||||
|
|
||||||
configureFlags = "--enable-alsa";
|
preBuild = ''
|
||||||
|
substituteInPlace modules/misc/freetype.c --replace \
|
||||||
|
/usr/share/fonts/truetype/freefont/FreeSerifBold.ttf \
|
||||||
|
${freefont_ttf}/share/fonts/truetype/FreeSerifBold.ttf
|
||||||
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Cross-platform media player and streaming server";
|
description = "Cross-platform media player and streaming server";
|
||||||
|
19
pkgs/applications/virtualization/qemu/svn-6642.nix
Normal file
19
pkgs/applications/virtualization/qemu/svn-6642.nix
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{stdenv, fetchsvn, SDL, zlib, which}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "qemu-svn-6642";
|
||||||
|
|
||||||
|
src = fetchsvn {
|
||||||
|
url = "svn://svn.sv.gnu.org/qemu/trunk";
|
||||||
|
rev = "6642";
|
||||||
|
sha256 = "12445ad91feb72eecd1db0d4319a8fa5d7dc971b89228bd0e121b49c5da9705e";
|
||||||
|
};
|
||||||
|
|
||||||
|
patchFlags = "-p2";
|
||||||
|
|
||||||
|
buildInputs = [SDL zlib which];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "QEmu processor emulator";
|
||||||
|
};
|
||||||
|
}
|
@ -41,9 +41,7 @@ rec {
|
|||||||
doForceShare postAll]);
|
doForceShare postAll]);
|
||||||
inherit propagatedBuildInputs;
|
inherit propagatedBuildInputs;
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "Compiz window manager";
|
||||||
Compiz window manager
|
|
||||||
";
|
|
||||||
inherit src;
|
inherit src;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -42,9 +42,7 @@ rec {
|
|||||||
doForceShare postAll]);
|
doForceShare postAll]);
|
||||||
inherit propagatedBuildInputs;
|
inherit propagatedBuildInputs;
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "Compiz window manager";
|
||||||
Compiz window manager
|
|
||||||
";
|
|
||||||
inherit src;
|
inherit src;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
48
pkgs/applications/window-managers/compiz/0.8.0.nix
Normal file
48
pkgs/applications/window-managers/compiz/0.8.0.nix
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
args : with args;
|
||||||
|
let localDefs = builderDefs.passthru.function {
|
||||||
|
src = /* put a fetchurl here */
|
||||||
|
fetchurl {
|
||||||
|
url = "http://releases.compiz-fusion.org/core/compiz-0.8.0.tar.gz";
|
||||||
|
sha256 = "0xhyilfz2cfbdwni774b54171addjqw7hda6j6snzxb1igny7iry";
|
||||||
|
};
|
||||||
|
buildInputs = [
|
||||||
|
pkgconfig gtk libwnck GConf libgnome
|
||||||
|
libgnomeui metacity gnomegtk glib pango libglade libgtkhtml
|
||||||
|
gtkhtml libgnomecanvas libgnomeprint libgnomeprintui gnomepanel
|
||||||
|
librsvg fuse gettext intltool
|
||||||
|
];
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
libpng libXcomposite libXfixes libXdamage libXrandr libXinerama
|
||||||
|
libICE libSM startupnotification mesa GConf perl perlXMLParser libxslt
|
||||||
|
dbus.libs dbus_glib compositeproto fixesproto damageproto randrproto
|
||||||
|
xineramaproto renderproto kbproto xextproto libXrender xproto libX11
|
||||||
|
libxcb
|
||||||
|
];
|
||||||
|
configureFlags = ["--enable-gtk" "--enable-fuse"
|
||||||
|
"--enable-annotate" "--enable-librsvg"] ++
|
||||||
|
(if args ? extraConfigureFlags then args.extraConfigureFlags else []);
|
||||||
|
};
|
||||||
|
in with localDefs;
|
||||||
|
let
|
||||||
|
postAll = FullDepEntry ("
|
||||||
|
for i in $out/bin/*; do
|
||||||
|
patchelf --set-rpath /var/run/opengl-driver/lib:$(patchelf --print-rpath $i) $i
|
||||||
|
done
|
||||||
|
ensureDir \$out/share/compiz-plugins/
|
||||||
|
ln -sfv \$out/lib/compiz \$out/share/compiz-plugins/
|
||||||
|
") [minInit doMakeInstall defEnsureDir];
|
||||||
|
in
|
||||||
|
|
||||||
|
stdenv.mkDerivation
|
||||||
|
rec {
|
||||||
|
name = "compiz-0.8.0";
|
||||||
|
builder = writeScript (name + "-builder")
|
||||||
|
(textClosure localDefs [doPatch doConfigure doMakeInstall doPropagate
|
||||||
|
doForceShare postAll]);
|
||||||
|
inherit propagatedBuildInputs;
|
||||||
|
meta = {
|
||||||
|
description = "Compiz window manager";
|
||||||
|
inherit src;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -16,9 +16,7 @@ stdenv.mkDerivation rec {
|
|||||||
builder = writeScript (name + "-builder")
|
builder = writeScript (name + "-builder")
|
||||||
(textClosure localDefs [doConfigure doMakeInstall doForceShare doPropagate]);
|
(textClosure localDefs [doConfigure doMakeInstall doForceShare doPropagate]);
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "Just a desktop panel";
|
||||||
Just a desktop panel.
|
|
||||||
";
|
|
||||||
inherit src;
|
inherit src;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -9,14 +9,11 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
buildInputs = [libX11 libXext libXinerama libXpm libXft];
|
buildInputs = [libX11 libXext libXinerama libXpm libXft];
|
||||||
|
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
sed -i -e s/rxvt/xterm/g $out/etc/system.jwmrc
|
sed -i -e s/rxvt/xterm/g $out/etc/system.jwmrc
|
||||||
sed -i -e "s/.*Swallow.*\|.*xload.*//" $out/etc/system.jwmrc'';
|
sed -i -e "s/.*Swallow.*\|.*xload.*//" $out/etc/system.jwmrc'';
|
||||||
|
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "JWM is a window manager for X11 window system. It is written in C and uses only Xlib at a minimum.";
|
description = "A window manager for X11 that requires only Xlib";
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
args: with args; stdenv.mkDerivation {
|
args: with args; stdenv.mkDerivation {
|
||||||
name = "wmii-20070516";
|
name = "wmii-20071116";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = http://www.suckless.org/download/wmii-3.6.tar.gz;
|
url = http://code.suckless.org/dl/wmii/wmii-3.6.tar.gz;
|
||||||
sha256 = "05mj651yv02rvkpqqkgwp8307nrrqpcwfv5k8186kx2yiiw9pws6";
|
sha256 = "46f39b788c5ef4695040b36cc7d9c539db0306bafc4d8cefdc5980ed4331b216";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [ libX11 libixp xextproto libXt libXext ];
|
buildInputs = [ libX11 libixp xextproto libXt libXext ];
|
||||||
|
@ -165,3 +165,7 @@ my $manifest = $ENV{"manifest"};
|
|||||||
if ($manifest ne "") {
|
if ($manifest ne "") {
|
||||||
symlink($manifest, "$out/manifest") or die "cannot create manifest";
|
symlink($manifest, "$out/manifest") or die "cannot create manifest";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
system("eval \"\$postBuild\"") == 0
|
||||||
|
or die "post-build hook failed";
|
||||||
|
@ -20,11 +20,13 @@
|
|||||||
# symlink (e.g., ["/bin"]). Any file not inside any of the
|
# symlink (e.g., ["/bin"]). Any file not inside any of the
|
||||||
# directories in the list is not symlinked.
|
# directories in the list is not symlinked.
|
||||||
pathsToLink ? ["/"]
|
pathsToLink ? ["/"]
|
||||||
|
|
||||||
|
, # Shell command to run after building the symlink tree.
|
||||||
|
postBuild ? ""
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
inherit name manifest paths ignoreCollisions pathsToLink;
|
inherit name manifest paths ignoreCollisions pathsToLink postBuild;
|
||||||
realBuilder = perl + "/bin/perl";
|
realBuilder = "${perl}/bin/perl";
|
||||||
args = ["-w" ./builder.pl];
|
args = ["-w" ./builder.pl];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -93,7 +93,6 @@ rec {
|
|||||||
|
|
||||||
# Mirrors of ftp://ftp.kde.org/pub/kde/.
|
# Mirrors of ftp://ftp.kde.org/pub/kde/.
|
||||||
kde = [
|
kde = [
|
||||||
http://ftp.scarlet.be/pub/kde/
|
|
||||||
http://ftp.gwdg.de/pub/x11/kde/
|
http://ftp.gwdg.de/pub/x11/kde/
|
||||||
ftp://ftp.heanet.ie/mirrors/ftp.kde.org/
|
ftp://ftp.heanet.ie/mirrors/ftp.kde.org/
|
||||||
ftp://ftp.kde.org/pub/kde/
|
ftp://ftp.kde.org/pub/kde/
|
||||||
@ -101,7 +100,7 @@ rec {
|
|||||||
|
|
||||||
# Gentoo files.
|
# Gentoo files.
|
||||||
gentoo = [
|
gentoo = [
|
||||||
http://www.ibiblio.org/pub/Linux/distributions/gentoo/
|
http://ftp.snt.utwente.nl/pub/os/linux/gentoo/
|
||||||
http://distfiles.gentoo.org/
|
http://distfiles.gentoo.org/
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -66,7 +66,7 @@ makeWrapper() {
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
echo "exec \"$original\" $flagsBefore \"\$@\"" >> $wrapper
|
echo "exec -a $(basename "$wrapper") \"$original\" $flagsBefore \"\$@\"" >> $wrapper
|
||||||
|
|
||||||
chmod +x $wrapper
|
chmod +x $wrapper
|
||||||
}
|
}
|
||||||
|
@ -1,13 +1,14 @@
|
|||||||
# This function compiles a source tarball in a virtual machine image
|
# This function compiles a source tarball in a virtual machine image
|
||||||
# that contains a Debian-like (i.e. dpkg-based) OS.
|
# that contains a Debian-like (i.e. dpkg-based) OS.
|
||||||
|
|
||||||
{vmTools, fetchurl}: args: with args;
|
{ name ? "debian-build"
|
||||||
|
, diskImage
|
||||||
|
, src, stdenv, vmTools, checkinstall
|
||||||
|
, ... } @ args:
|
||||||
|
|
||||||
vmTools.runInLinuxImage (stdenv.mkDerivation (
|
vmTools.runInLinuxImage (stdenv.mkDerivation (
|
||||||
|
|
||||||
{
|
{
|
||||||
name = "debian-build";
|
|
||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
prefix = "/usr";
|
prefix = "/usr";
|
||||||
@ -15,11 +16,11 @@ vmTools.runInLinuxImage (stdenv.mkDerivation (
|
|||||||
phases = "installExtraDebsPhase sysInfoPhase unpackPhase patchPhase configurePhase buildPhase checkPhase installPhase distPhase";
|
phases = "installExtraDebsPhase sysInfoPhase unpackPhase patchPhase configurePhase buildPhase checkPhase installPhase distPhase";
|
||||||
}
|
}
|
||||||
|
|
||||||
// args //
|
// removeAttrs args ["vmTools"] //
|
||||||
|
|
||||||
{
|
{
|
||||||
src = src.path;
|
name = name + "-" + diskImage.name + (if src ? version then "-" + src.version else "");
|
||||||
|
|
||||||
# !!! cut&paste from rpm-build.nix
|
# !!! cut&paste from rpm-build.nix
|
||||||
postHook = ''
|
postHook = ''
|
||||||
ensureDir $out/nix-support
|
ensureDir $out/nix-support
|
||||||
@ -50,7 +51,7 @@ vmTools.runInLinuxImage (stdenv.mkDerivation (
|
|||||||
|
|
||||||
installCommand = ''
|
installCommand = ''
|
||||||
export LOGNAME=root
|
export LOGNAME=root
|
||||||
|
|
||||||
${checkinstall}/sbin/checkinstall -y -D make install
|
${checkinstall}/sbin/checkinstall -y -D make install
|
||||||
|
|
||||||
ensureDir $out/debs
|
ensureDir $out/debs
|
||||||
@ -66,7 +67,7 @@ vmTools.runInLinuxImage (stdenv.mkDerivation (
|
|||||||
''; # */
|
''; # */
|
||||||
|
|
||||||
meta = (if args ? meta then args.meta else {}) // {
|
meta = (if args ? meta then args.meta else {}) // {
|
||||||
description = "Build of a Deb package on ${args.diskImage.fullName} (${args.diskImage.name})";
|
description = "Build of a Deb package on ${diskImage.fullName} (${diskImage.name})";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -17,10 +17,12 @@ rec {
|
|||||||
doCoverageAnalysis = true;
|
doCoverageAnalysis = true;
|
||||||
} // args);
|
} // args);
|
||||||
|
|
||||||
rpmBuild = args: import ./rpm-build.nix vmTools args;
|
rpmBuild = args: import ./rpm-build.nix (
|
||||||
|
{ inherit vmTools;
|
||||||
|
} // args);
|
||||||
|
|
||||||
debBuild = args: import ./debian-build.nix {inherit vmTools fetchurl;} (
|
debBuild = args: import ./debian-build.nix (
|
||||||
{ inherit stdenv checkinstall;
|
{ inherit stdenv vmTools checkinstall;
|
||||||
} // args);
|
} // args);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -4,6 +4,8 @@
|
|||||||
|
|
||||||
{ officialRelease ? false
|
{ officialRelease ? false
|
||||||
, buildInputs ? []
|
, buildInputs ? []
|
||||||
|
, name ? "source-tarball"
|
||||||
|
, version ? "0"
|
||||||
, src, stdenv, autoconf, automake, libtool
|
, src, stdenv, autoconf, automake, libtool
|
||||||
, ... } @ args:
|
, ... } @ args:
|
||||||
|
|
||||||
@ -20,8 +22,6 @@ stdenv.mkDerivation (
|
|||||||
|
|
||||||
# First, attributes that can be overriden by the caller (via args):
|
# First, attributes that can be overriden by the caller (via args):
|
||||||
{
|
{
|
||||||
name = "source-tarball";
|
|
||||||
|
|
||||||
# By default, only configure and build a source distribution.
|
# By default, only configure and build a source distribution.
|
||||||
# Some packages can only build a distribution after a general
|
# Some packages can only build a distribution after a general
|
||||||
# `make' (or even `make install').
|
# `make' (or even `make install').
|
||||||
@ -43,7 +43,7 @@ stdenv.mkDerivation (
|
|||||||
|
|
||||||
# And finally, our own stuff.
|
# And finally, our own stuff.
|
||||||
{
|
{
|
||||||
src = src.path;
|
name = name + "-" + version + versionSuffix;
|
||||||
|
|
||||||
buildInputs = buildInputs ++ [autoconf automake libtool];
|
buildInputs = buildInputs ++ [autoconf automake libtool];
|
||||||
|
|
||||||
@ -66,6 +66,7 @@ stdenv.mkDerivation (
|
|||||||
|
|
||||||
# Autoconfiscate the sources.
|
# Autoconfiscate the sources.
|
||||||
autoconfPhase = ''
|
autoconfPhase = ''
|
||||||
|
export VERSION=${version}
|
||||||
export VERSION_SUFFIX=${versionSuffix}
|
export VERSION_SUFFIX=${versionSuffix}
|
||||||
|
|
||||||
eval "$preAutoconf"
|
eval "$preAutoconf"
|
||||||
@ -96,12 +97,14 @@ stdenv.mkDerivation (
|
|||||||
test -n "$releaseName" && (echo "$releaseName" >> $out/nix-support/hydra-release-name)
|
test -n "$releaseName" && (echo "$releaseName" >> $out/nix-support/hydra-release-name)
|
||||||
''; # */
|
''; # */
|
||||||
|
|
||||||
passthru = {inherit src;};
|
passthru = {
|
||||||
|
inherit src;
|
||||||
|
version = version + versionSuffix;
|
||||||
|
};
|
||||||
|
|
||||||
meta = (if args ? meta then args.meta else {}) // {
|
meta = (if args ? meta then args.meta else {}) // {
|
||||||
description = "Build of a source distribution from a checkout";
|
description = "Build of a source distribution from a checkout";
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
)
|
)
|
||||||
|
@ -8,13 +8,12 @@
|
|||||||
{ doCoverageAnalysis ? false
|
{ doCoverageAnalysis ? false
|
||||||
, lcovFilter ? []
|
, lcovFilter ? []
|
||||||
, src, stdenv
|
, src, stdenv
|
||||||
|
, name ? if doCoverageAnalysis then "nix-coverage" else "nix-build"
|
||||||
, ... } @ args:
|
, ... } @ args:
|
||||||
|
|
||||||
stdenv.mkDerivation (
|
stdenv.mkDerivation (
|
||||||
|
|
||||||
{
|
{
|
||||||
name = "nix-build";
|
|
||||||
|
|
||||||
# Also run a `make check'.
|
# Also run a `make check'.
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
|
|
||||||
@ -24,14 +23,14 @@ stdenv.mkDerivation (
|
|||||||
showBuildStats = true;
|
showBuildStats = true;
|
||||||
|
|
||||||
# Hack - swap checkPhase and installPhase (otherwise Stratego barfs).
|
# Hack - swap checkPhase and installPhase (otherwise Stratego barfs).
|
||||||
phases = "unpackPhase patchPhase configurePhase buildPhase installPhase checkPhase fixupPhase distPhase ${if doCoverageAnalysis then "coverageReportPhase" else ""}";
|
phases = "unpackPhase patchPhase configurePhase buildPhase installPhase checkPhase fixupPhase distPhase ${if doCoverageAnalysis then "coverageReportPhase" else ""} finalPhase";
|
||||||
}
|
}
|
||||||
|
|
||||||
// args //
|
// args //
|
||||||
|
|
||||||
{
|
{
|
||||||
src = src.path;
|
name = name + (if src ? version then "-" + src.version else "");
|
||||||
|
|
||||||
postHook = ''
|
postHook = ''
|
||||||
ensureDir $out/nix-support
|
ensureDir $out/nix-support
|
||||||
echo "$system" > $out/nix-support/system
|
echo "$system" > $out/nix-support/system
|
||||||
@ -43,7 +42,7 @@ stdenv.mkDerivation (
|
|||||||
# If `src' is the result of a call to `makeSourceTarball', then it
|
# If `src' is the result of a call to `makeSourceTarball', then it
|
||||||
# has a subdirectory containing the actual tarball(s). If there are
|
# has a subdirectory containing the actual tarball(s). If there are
|
||||||
# multiple tarballs, just pick the first one.
|
# multiple tarballs, just pick the first one.
|
||||||
echo $src
|
origSrc=$src
|
||||||
if test -d $src/tarballs; then
|
if test -d $src/tarballs; then
|
||||||
src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz | sort | head -1)
|
src=$(ls $src/tarballs/*.tar.bz2 $src/tarballs/*.tar.gz | sort | head -1)
|
||||||
fi
|
fi
|
||||||
@ -85,6 +84,16 @@ stdenv.mkDerivation (
|
|||||||
|
|
||||||
|
|
||||||
lcovFilter = ["/nix/store/*"] ++ lcovFilter;
|
lcovFilter = ["/nix/store/*"] ++ lcovFilter;
|
||||||
|
|
||||||
|
|
||||||
|
finalPhase =
|
||||||
|
''
|
||||||
|
# Propagate the release name of the source tarball. This is
|
||||||
|
# to get nice package names in channels.
|
||||||
|
if test -e $origSrc/nix-support/hydra-release-name; then
|
||||||
|
cp $origSrc/nix-support/hydra-release-name $out/nix-support/hydra-release-name
|
||||||
|
fi
|
||||||
|
'';
|
||||||
|
|
||||||
|
|
||||||
meta = (if args ? meta then args.meta else {}) // {
|
meta = (if args ? meta then args.meta else {}) // {
|
||||||
|
@ -1,18 +1,17 @@
|
|||||||
# This function builds an RPM from a source tarball that contains a
|
# This function builds an RPM from a source tarball that contains a
|
||||||
# RPM spec file (i.e., one that can be built using `rpmbuild -ta').
|
# RPM spec file (i.e., one that can be built using `rpmbuild -ta').
|
||||||
|
|
||||||
vmTools: args: with args;
|
{ name ? "rpm-build"
|
||||||
|
, diskImage
|
||||||
|
, src, vmTools
|
||||||
|
, ... } @ args:
|
||||||
|
|
||||||
vmTools.buildRPM (
|
vmTools.buildRPM (
|
||||||
|
|
||||||
{
|
removeAttrs args ["vmTools"] //
|
||||||
name = "rpm-build";
|
|
||||||
}
|
|
||||||
|
|
||||||
// args //
|
|
||||||
|
|
||||||
{
|
{
|
||||||
src = src.path;
|
name = name + "-" + diskImage.name + (if src ? version then "-" + src.version else "");
|
||||||
|
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
ensureDir $out/nix-support
|
ensureDir $out/nix-support
|
||||||
@ -34,7 +33,7 @@ vmTools.buildRPM (
|
|||||||
''; # */
|
''; # */
|
||||||
|
|
||||||
meta = (if args ? meta then args.meta else {}) // {
|
meta = (if args ? meta then args.meta else {}) // {
|
||||||
description = "Build of an RPM package on ${args.diskImage.fullName} (${args.diskImage.name})";
|
description = "Build of an RPM package on ${diskImage.fullName} (${diskImage.name})";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -31,6 +31,15 @@ rec {
|
|||||||
allowedReferences = []; # prevent accidents like glibc being included in the initrd
|
allowedReferences = []; # prevent accidents like glibc being included in the initrd
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
createDeviceNodes = dev:
|
||||||
|
''
|
||||||
|
mknod ${dev}/null c 1 3
|
||||||
|
mknod ${dev}/zero c 1 5
|
||||||
|
mknod ${dev}/tty c 5 0
|
||||||
|
mknod ${dev}/vda b 253 0
|
||||||
|
'';
|
||||||
|
|
||||||
|
|
||||||
stage1Init = writeScript "vm-run-stage1" ''
|
stage1Init = writeScript "vm-run-stage1" ''
|
||||||
#! ${klibcShrunk}/bin/sh.shared -e
|
#! ${klibcShrunk}/bin/sh.shared -e
|
||||||
@ -75,10 +84,7 @@ rec {
|
|||||||
done
|
done
|
||||||
|
|
||||||
mount -t tmpfs none /dev
|
mount -t tmpfs none /dev
|
||||||
mknod /dev/null c 1 3
|
${createDeviceNodes "/dev"}
|
||||||
mknod /dev/zero c 1 5
|
|
||||||
mknod /dev/tty c 5 0
|
|
||||||
mknod /dev/vda b 253 0
|
|
||||||
|
|
||||||
ipconfig 10.0.2.15:::::eth0:none
|
ipconfig 10.0.2.15:::::eth0:none
|
||||||
|
|
||||||
@ -211,8 +217,8 @@ rec {
|
|||||||
|
|
||||||
createEmptyImage = {size, fullName}: ''
|
createEmptyImage = {size, fullName}: ''
|
||||||
mkdir $out
|
mkdir $out
|
||||||
diskImage=$out/image
|
diskImage=$out/disk-image.qcow2
|
||||||
qemu-img create -f qcow $diskImage "${toString size}M"
|
qemu-img create -f qcow2 $diskImage "${toString size}M"
|
||||||
|
|
||||||
mkdir $out/nix-support
|
mkdir $out/nix-support
|
||||||
echo "${fullName}" > $out/nix-support/full-name
|
echo "${fullName}" > $out/nix-support/full-name
|
||||||
@ -230,6 +236,7 @@ rec {
|
|||||||
touch /mnt/.debug
|
touch /mnt/.debug
|
||||||
|
|
||||||
mkdir /mnt/proc /mnt/dev /mnt/sys /mnt/bin
|
mkdir /mnt/proc /mnt/dev /mnt/sys /mnt/bin
|
||||||
|
${createDeviceNodes "/mnt/dev"}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|
||||||
@ -305,10 +312,10 @@ rec {
|
|||||||
QEMU_OPTS = "-m ${toString (if attrs ? memSize then attrs.memSize else 256)}";
|
QEMU_OPTS = "-m ${toString (if attrs ? memSize then attrs.memSize else 256)}";
|
||||||
|
|
||||||
preVM = ''
|
preVM = ''
|
||||||
diskImage=$(pwd)/image
|
diskImage=$(pwd)/disk-image.qcow2
|
||||||
origImage=${attrs.diskImage}
|
origImage=${attrs.diskImage}
|
||||||
if test -d "$origImage"; then origImage="$origImage/image"; fi
|
if test -d "$origImage"; then origImage="$origImage/disk-image.qcow2"; fi
|
||||||
qemu-img create -b "$origImage" -f qcow $diskImage
|
qemu-img create -b "$origImage" -f qcow2 $diskImage
|
||||||
|
|
||||||
echo "$buildCommand" > cmd
|
echo "$buildCommand" > cmd
|
||||||
|
|
||||||
@ -332,10 +339,10 @@ rec {
|
|||||||
/* Mount `image' as the root FS, but use a temporary copy-on-write
|
/* Mount `image' as the root FS, but use a temporary copy-on-write
|
||||||
image since we don't want to (and can't) write to `image'. */
|
image since we don't want to (and can't) write to `image'. */
|
||||||
preVM = ''
|
preVM = ''
|
||||||
diskImage=$(pwd)/image
|
diskImage=$(pwd)/disk-image.qcow2
|
||||||
origImage=${attrs.diskImage}
|
origImage=${attrs.diskImage}
|
||||||
if test -d "$origImage"; then origImage="$origImage/image"; fi
|
if test -d "$origImage"; then origImage="$origImage/disk-image.qcow2"; fi
|
||||||
qemu-img create -b "$origImage" -f qcow $diskImage
|
qemu-img create -b "$origImage" -f qcow2 $diskImage
|
||||||
'';
|
'';
|
||||||
|
|
||||||
/* Inside the VM, run the stdenv setup script normally, but at the
|
/* Inside the VM, run the stdenv setup script normally, but at the
|
||||||
@ -416,7 +423,7 @@ rec {
|
|||||||
fi
|
fi
|
||||||
diskImage="$1"
|
diskImage="$1"
|
||||||
if ! test -e "$diskImage"; then
|
if ! test -e "$diskImage"; then
|
||||||
qemu-img create -b ${image}/image -f qcow "$diskImage"
|
qemu-img create -b ${image}/disk-image.qcow2 -f qcow2 "$diskImage"
|
||||||
fi
|
fi
|
||||||
export TMPDIR=$(mktemp -d)
|
export TMPDIR=$(mktemp -d)
|
||||||
export out=/dummy
|
export out=/dummy
|
||||||
@ -748,6 +755,28 @@ rec {
|
|||||||
archs = ["noarch" "i586"];
|
archs = ["noarch" "i586"];
|
||||||
} // args);
|
} // args);
|
||||||
|
|
||||||
|
opensuse110i386 = args: makeImageFromRPMDist ({
|
||||||
|
name = "opensuse-11.0-i586";
|
||||||
|
fullName = "openSUSE 11.0 (i586)";
|
||||||
|
packagesList = fetchurl {
|
||||||
|
url = mirror://opensuse/distribution/11.0/repo/oss/suse/repodata/primary.xml.gz;
|
||||||
|
sha256 = "13rv855aj8p3h1zpsji5xa1wpkhgq94gcxzvg05l2b68b15q3mwn";
|
||||||
|
};
|
||||||
|
urlPrefix = mirror://opensuse/distribution/11.0/repo/oss/suse/;
|
||||||
|
archs = ["noarch" "i586"];
|
||||||
|
} // args);
|
||||||
|
|
||||||
|
opensuse110x86_64 = args: makeImageFromRPMDist ({
|
||||||
|
name = "opensuse-11.0-x86_64";
|
||||||
|
fullName = "openSUSE 11.0 (x86_64)";
|
||||||
|
packagesList = fetchurl {
|
||||||
|
url = mirror://opensuse/distribution/11.0/repo/oss/suse/repodata/primary.xml.gz;
|
||||||
|
sha256 = "13rv855aj8p3h1zpsji5xa1wpkhgq94gcxzvg05l2b68b15q3mwn";
|
||||||
|
};
|
||||||
|
urlPrefix = mirror://opensuse/distribution/11.0/repo/oss/suse/;
|
||||||
|
archs = ["noarch" "x86_64"];
|
||||||
|
} // args);
|
||||||
|
|
||||||
# Interestingly, the SHA-256 hashes provided by Ubuntu in
|
# Interestingly, the SHA-256 hashes provided by Ubuntu in
|
||||||
# http://nl.archive.ubuntu.com/ubuntu/dists/{gutsy,hardy}/Release are
|
# http://nl.archive.ubuntu.com/ubuntu/dists/{gutsy,hardy}/Release are
|
||||||
# wrong, but the SHA-1 and MD5 hashes are correct. Intrepid is fine.
|
# wrong, but the SHA-1 and MD5 hashes are correct. Intrepid is fine.
|
||||||
@ -797,27 +826,47 @@ rec {
|
|||||||
fullName = "Ubuntu 8.10 Intrepid (amd64)";
|
fullName = "Ubuntu 8.10 Intrepid (amd64)";
|
||||||
packagesList = fetchurl {
|
packagesList = fetchurl {
|
||||||
url = mirror://ubuntu/dists/intrepid/main/binary-amd64/Packages.bz2;
|
url = mirror://ubuntu/dists/intrepid/main/binary-amd64/Packages.bz2;
|
||||||
sha1 = "01b2f3842cbdd5834446ddf91691bcf60f59a726dcefa23fb5b93fdc8ea7e27f";
|
sha256 = "01b2f3842cbdd5834446ddf91691bcf60f59a726dcefa23fb5b93fdc8ea7e27f";
|
||||||
};
|
};
|
||||||
urlPrefix = mirror://ubuntu;
|
urlPrefix = mirror://ubuntu;
|
||||||
} // args);
|
} // args);
|
||||||
|
|
||||||
debian40i386 = args: makeImageFromDebDist ({
|
debian40i386 = args: makeImageFromDebDist ({
|
||||||
name = "debian-4.0r5-etch-i386";
|
name = "debian-4.0r7-etch-i386";
|
||||||
fullName = "Debian 4.0r5 Etch (i386)";
|
fullName = "Debian 4.0r7 Etch (i386)";
|
||||||
packagesList = fetchurl {
|
packagesList = fetchurl {
|
||||||
url = mirror://debian/dists/etch/main/binary-i386/Packages.bz2;
|
url = mirror://debian/dists/etch/main/binary-i386/Packages.bz2;
|
||||||
sha256 = "37a5c17fd8d62b1d9a0264a702025a4381c1a8751e2550d101957d8fa724a6f4";
|
sha256 = "155c1d1b4ce54de6c8134ab0154c2a476ae40cc5899109f3f95fecd5e002c50d";
|
||||||
};
|
};
|
||||||
urlPrefix = mirror://debian;
|
urlPrefix = mirror://debian;
|
||||||
} // args);
|
} // args);
|
||||||
|
|
||||||
debian40x86_64 = args: makeImageFromDebDist ({
|
debian40x86_64 = args: makeImageFromDebDist ({
|
||||||
name = "debian-4.0r5-etch-amd64";
|
name = "debian-4.0r7-etch-amd64";
|
||||||
fullName = "Debian 4.0r5 Etch (amd64)";
|
fullName = "Debian 4.0r7 Etch (amd64)";
|
||||||
packagesList = fetchurl {
|
packagesList = fetchurl {
|
||||||
url = mirror://debian/dists/etch/main/binary-amd64/Packages.bz2;
|
url = mirror://debian/dists/etch/main/binary-amd64/Packages.bz2;
|
||||||
sha256 = "244dc892f89f2f73ce8372cdf1f1d450b00c0e95196927ef7f99715f0d119d5b";
|
sha256 = "3ab73a45781651a78c824b4f281de91b1aa6974d63470f40525933d848183e44";
|
||||||
|
};
|
||||||
|
urlPrefix = mirror://debian;
|
||||||
|
} // args);
|
||||||
|
|
||||||
|
debian50i386 = args: makeImageFromDebDist ({
|
||||||
|
name = "debian-5.0-lenny-i386";
|
||||||
|
fullName = "Debian 5.0 Lenny (i386)";
|
||||||
|
packagesList = fetchurl {
|
||||||
|
url = mirror://debian/dists/lenny/main/binary-i386/Packages.bz2;
|
||||||
|
sha256 = "afbead64fb4820e50294686cd3ccdff91026b214aabec3f212f9001482001061";
|
||||||
|
};
|
||||||
|
urlPrefix = mirror://debian;
|
||||||
|
} // args);
|
||||||
|
|
||||||
|
debian50x86_64 = args: makeImageFromDebDist ({
|
||||||
|
name = "debian-5.0-lenny-amd64";
|
||||||
|
fullName = "Debian 5.0 Lenny (amd64)";
|
||||||
|
packagesList = fetchurl {
|
||||||
|
url = mirror://debian/dists/lenny/main/binary-amd64/Packages.bz2;
|
||||||
|
sha256 = "73d74454d687dfbdfef1abbe4bd9c251119f38ab8d371a593aa271bfa227ed2b";
|
||||||
};
|
};
|
||||||
urlPrefix = mirror://debian;
|
urlPrefix = mirror://debian;
|
||||||
} // args);
|
} // args);
|
||||||
@ -856,7 +905,6 @@ rec {
|
|||||||
"automake"
|
"automake"
|
||||||
"bzip2"
|
"bzip2"
|
||||||
"curl"
|
"curl"
|
||||||
"devs"
|
|
||||||
"diffutils"
|
"diffutils"
|
||||||
"findutils"
|
"findutils"
|
||||||
"gawk"
|
"gawk"
|
||||||
@ -896,6 +944,11 @@ rec {
|
|||||||
"util-linux"
|
"util-linux"
|
||||||
"file"
|
"file"
|
||||||
"dpkg-dev"
|
"dpkg-dev"
|
||||||
|
# Needed because it provides /etc/login.defs, whose absence causes
|
||||||
|
# the "passwd" post-installs script to fail.
|
||||||
|
"login"
|
||||||
|
# For shutting up some messages during some post-install scripts:
|
||||||
|
"mktemp"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
@ -939,7 +992,9 @@ rec {
|
|||||||
fedora9x86_64 = diskImageFuns.fedora9x86_64 { packages = commonFedoraPackages; };
|
fedora9x86_64 = diskImageFuns.fedora9x86_64 { packages = commonFedoraPackages; };
|
||||||
fedora10i386 = diskImageFuns.fedora10i386 { packages = commonFedoraPackages; };
|
fedora10i386 = diskImageFuns.fedora10i386 { packages = commonFedoraPackages; };
|
||||||
fedora10x86_64 = diskImageFuns.fedora10x86_64 { packages = commonFedoraPackages; };
|
fedora10x86_64 = diskImageFuns.fedora10x86_64 { packages = commonFedoraPackages; };
|
||||||
opensuse103i386 = diskImageFuns.opensuse103i386 { packages = commonOpenSUSEPackages; };
|
opensuse103i386 = diskImageFuns.opensuse103i386 { packages = commonOpenSUSEPackages ++ ["devs"]; };
|
||||||
|
opensuse110i386 = diskImageFuns.opensuse110i386 { packages = commonOpenSUSEPackages; };
|
||||||
|
opensuse110x86_64 = diskImageFuns.opensuse110x86_64 { packages = commonOpenSUSEPackages; };
|
||||||
|
|
||||||
ubuntu710i386 = diskImageFuns.ubuntu710i386 { packages = commonDebianPackages; };
|
ubuntu710i386 = diskImageFuns.ubuntu710i386 { packages = commonDebianPackages; };
|
||||||
ubuntu804i386 = diskImageFuns.ubuntu804i386 { packages = commonDebianPackages; };
|
ubuntu804i386 = diskImageFuns.ubuntu804i386 { packages = commonDebianPackages; };
|
||||||
@ -948,6 +1003,8 @@ rec {
|
|||||||
ubuntu810x86_64 = diskImageFuns.ubuntu810x86_64 { packages = commonDebianPackages; };
|
ubuntu810x86_64 = diskImageFuns.ubuntu810x86_64 { packages = commonDebianPackages; };
|
||||||
debian40i386 = diskImageFuns.debian40i386 { packages = commonDebianPackages; };
|
debian40i386 = diskImageFuns.debian40i386 { packages = commonDebianPackages; };
|
||||||
debian40x86_64 = diskImageFuns.debian40x86_64 { packages = commonDebianPackages; };
|
debian40x86_64 = diskImageFuns.debian40x86_64 { packages = commonDebianPackages; };
|
||||||
|
debian50i386 = diskImageFuns.debian50i386 { packages = commonDebianPackages; };
|
||||||
|
debian50x86_64 = diskImageFuns.debian50x86_64 { packages = commonDebianPackages; };
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ rec {
|
|||||||
|
|
||||||
buildInDebian = runInLinuxImage (stdenv.mkDerivation {
|
buildInDebian = runInLinuxImage (stdenv.mkDerivation {
|
||||||
name = "deb-compile";
|
name = "deb-compile";
|
||||||
src = nixUnstable.src;
|
src = patchelf.src;
|
||||||
diskImage = diskImages.ubuntu810i386;
|
diskImage = diskImages.ubuntu810i386;
|
||||||
memSize = 512;
|
memSize = 512;
|
||||||
phases = "sysInfoPhase unpackPhase patchPhase configurePhase buildPhase checkPhase installPhase fixupPhase distPhase";
|
phases = "sysInfoPhase unpackPhase patchPhase configurePhase buildPhase checkPhase installPhase fixupPhase distPhase";
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
{stdenv, fetchurl}:
|
{stdenv, fetchurl}:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "man-pages-3.15";
|
name = "man-pages-3.18";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "mirror://kernel/linux/docs/man-pages/${name}.tar.bz2";
|
url = "mirror://kernel/linux/docs/man-pages/${name}.tar.bz2";
|
||||||
sha256 = "0pr29ziz2d2zl2iii16372x2bqvx1a5g8xbb6wga4nxiz4w6ixhh";
|
sha256 = "7be08777fae2c873106f6d3ae09678444e635112ad9c52f9e9200439710dd8de";
|
||||||
};
|
};
|
||||||
|
|
||||||
preBuild = "
|
preBuild = "
|
||||||
|
@ -15,8 +15,7 @@ stdenv.mkDerivation rec {
|
|||||||
builder = ./builder.sh;
|
builder = ./builder.sh;
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = ''Revised^${toString revision} Report on the
|
description = "Revised^${toString revision} Report on the Algorithmic Language Scheme";
|
||||||
Algorithmic Language Scheme'';
|
|
||||||
|
|
||||||
longDescription = ''
|
longDescription = ''
|
||||||
This package contains the GNU Info version of the
|
This package contains the GNU Info version of the
|
||||||
|
@ -23,9 +23,7 @@ stdenv.mkDerivation rec {
|
|||||||
(textClosure localDefs
|
(textClosure localDefs
|
||||||
[doInstall doForceShare doPropagate]);
|
[doInstall doForceShare doPropagate]);
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "A Unicode font";
|
||||||
A Unicode font.
|
|
||||||
";
|
|
||||||
inherit src;
|
inherit src;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -21,9 +21,7 @@ stdenv.mkDerivation rec {
|
|||||||
(textClosure localDefs
|
(textClosure localDefs
|
||||||
[doInstall doForceShare doPropagate]);
|
[doInstall doForceShare doPropagate]);
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "A Unicode font";
|
||||||
A Unicode font.
|
|
||||||
";
|
|
||||||
inherit src;
|
inherit src;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -31,9 +31,7 @@ wrapFonts (stdenv.mkDerivation {
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "Unicode bitmap fonts";
|
||||||
UCS-fonts - Unicode bitmap fonts.
|
|
||||||
";
|
|
||||||
src = [srcA srcB srcC];
|
src = [srcA srcB srcC];
|
||||||
};
|
};
|
||||||
})
|
})
|
||||||
|
@ -20,9 +20,7 @@ stdenv.mkDerivation rec {
|
|||||||
(textClosure localDefs
|
(textClosure localDefs
|
||||||
[doInstall doForceShare doPropagate]);
|
[doInstall doForceShare doPropagate]);
|
||||||
meta = {
|
meta = {
|
||||||
description = "
|
description = "A (mainly) Chinese Unicode font";
|
||||||
A (mainly) Chinese Unicode font.
|
|
||||||
";
|
|
||||||
inherit src;
|
inherit src;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
{ fetchurl, stdenv }:
|
{ fetchurl, stdenv }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "poppler-data-0.2.0";
|
name = "poppler-data-0.2.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://poppler.freedesktop.org/${name}.tar.gz";
|
url = "http://poppler.freedesktop.org/${name}.tar.gz";
|
||||||
sha256 = "0cpa1krpd6xjbn1nv825z5p8v4cfcypdri4bhzvn2dnjy997x9k8";
|
sha256 = "0q56l5v89pnpkm1kqmwb1sx2zcx89q6bxz2hq2cpkq5f8kgvl3c9";
|
||||||
};
|
};
|
||||||
|
|
||||||
installFlags = "prefix=\${out}";
|
installFlags = "prefix=\${out}";
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
args:
|
|
||||||
import ./common.nix "1chz63v9jr009z9jhs07klybmhyf58i8vxipigf5gkdabjiclcyr" args
|
|
@ -1,2 +0,0 @@
|
|||||||
args:
|
|
||||||
import ./common.nix "080ny2vy00202hxcm7xm72j1zmyfs15dbsnqipwni6b2dg2am3q3" args
|
|
@ -1,16 +0,0 @@
|
|||||||
hash: args: with args;
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "shared-mime-info-" + version;
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://freedesktop.org/~hadess/${name}.tar.bz2";
|
|
||||||
sha256 = hash;
|
|
||||||
};
|
|
||||||
|
|
||||||
buildInputs = [perl perlXMLParser pkgconfig gettext libxml2 glib];
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
homepage = http://freedesktop.org/wiki/Software/shared-mime-info;
|
|
||||||
};
|
|
||||||
}
|
|
17
pkgs/data/misc/shared-mime-info/default.nix
Normal file
17
pkgs/data/misc/shared-mime-info/default.nix
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{stdenv, fetchurl, pkgconfig, gettext, intltool, libxml2, glib}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "shared-mime-info-0.51";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://freedesktop.org/~hadess/${name}.tar.bz2";
|
||||||
|
sha256 = "1n7fn3vnqdq5c4xjyflwryxdb75cwsmw39hdpjy90swd841pw90w";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [pkgconfig gettext intltool libxml2 glib];
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "A database of common MIME types";
|
||||||
|
homepage = http://freedesktop.org/wiki/Software/shared-mime-info;
|
||||||
|
};
|
||||||
|
}
|
55
pkgs/desktops/kde-3/kdebase/default.nix
Normal file
55
pkgs/desktops/kde-3/kdebase/default.nix
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
{ stdenv, fetchurl, pkgconfig, x11, xlibs, zlib, libpng, libjpeg, perl
|
||||||
|
, qt, kdelibs, openssl, bzip2, fontconfig, pam, hal, dbus, glib
|
||||||
|
}:
|
||||||
|
|
||||||
|
# Note: the glib dependency is needed for nspluginviewer.
|
||||||
|
|
||||||
|
let version = "3.5.10"; in
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "kdebase-${version}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "mirror://kde/stable/${version}/src/kdebase-${version}.tar.bz2";
|
||||||
|
sha256 = "0qbbw78b725kf35p5jx11zq0246zm15pyyhmlpkz4cn5527rvakp";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
pkgconfig x11 zlib libpng libjpeg perl qt kdelibs openssl bzip2
|
||||||
|
fontconfig pam hal dbus glib
|
||||||
|
xlibs.libXrandr xlibs.libXinerama xlibs.libXau xlibs.libXdmcp
|
||||||
|
xlibs.libXcursor xlibs.libfontenc xlibs.imake xlibs.bdftopcf
|
||||||
|
xlibs.libxkbfile xlibs.xf86miscproto xlibs.libXxf86misc
|
||||||
|
xlibs.scrnsaverproto xlibs.libXScrnSaver
|
||||||
|
xlibs.libXcomposite xlibs.libXfixes
|
||||||
|
];
|
||||||
|
|
||||||
|
configureFlags = ''
|
||||||
|
--without-arts
|
||||||
|
--with-ssl-dir=${openssl}
|
||||||
|
--with-extra-includes=${libjpeg}/include
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Prevent configure from looking for pkg-config and freetype-config
|
||||||
|
# in the wrong location (it looks in /usr/bin etc. *before* looking
|
||||||
|
# in $PATH).
|
||||||
|
preConfigure = ''
|
||||||
|
substituteInPlace configure \
|
||||||
|
--replace /usr/bin /no-such-path \
|
||||||
|
--replace /usr/local/bin /no-such-path \
|
||||||
|
--replace /opt/local/bin /no-such-path
|
||||||
|
'';
|
||||||
|
|
||||||
|
# Quick hack to work around a faulty dependency in
|
||||||
|
# konqueror/keditbookmarks/Makefile.am (${includedir} should be
|
||||||
|
# ${kdelibs} or so).
|
||||||
|
preBuild = ''
|
||||||
|
ensureDir $out/include
|
||||||
|
ln -s ${kdelibs}/include/kbookmarknotifier.h $out/include/
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall = "rm $out/include/kbookmarknotifier.h";
|
||||||
|
|
||||||
|
# Work around some inexplicable build failure starting in kdebase 3.5.9.
|
||||||
|
LDFLAGS = "-L${kdelibs}/lib";
|
||||||
|
}
|
43
pkgs/desktops/kde-3/kdelibs/default.nix
Normal file
43
pkgs/desktops/kde-3/kdelibs/default.nix
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
{ stdenv, fetchurl, xlibs, zlib, perl, qt, openssl, pcre
|
||||||
|
, pkgconfig, libjpeg, libpng, libtiff, libxml2, libxslt, libtool, expat
|
||||||
|
, freetype, bzip2, cups, attr, acl
|
||||||
|
}:
|
||||||
|
|
||||||
|
let version = "3.5.10"; in
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "kdelibs-${version}";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "mirror://kde/stable/${version}/src/kdelibs-${version}.tar.bz2";
|
||||||
|
sha256 = "0wjw51r96h6rngbsrzndw890xggzvrakydsbaldlrvbh3jq9qzk1";
|
||||||
|
};
|
||||||
|
|
||||||
|
passthru = {inherit openssl libjpeg qt; inherit (xlibs) libX11;};
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
zlib perl qt openssl pcre pkgconfig libjpeg libpng libtiff libxml2
|
||||||
|
libxslt expat libtool freetype bzip2 cups
|
||||||
|
xlibs.libX11 xlibs.libXt xlibs.libXext xlibs.libXrender xlibs.libXft
|
||||||
|
];
|
||||||
|
|
||||||
|
propagatedBuildInputs = [attr acl];
|
||||||
|
|
||||||
|
# Prevent configure from looking for pkg-config and freetype-config
|
||||||
|
# in the wrong location (it looks in /usr/bin etc. *before* looking
|
||||||
|
# in $PATH).
|
||||||
|
preConfigure = ''
|
||||||
|
substituteInPlace configure \
|
||||||
|
--replace /usr/bin /no-such-path \
|
||||||
|
--replace /usr/local/bin /no-such-path \
|
||||||
|
--replace /opt/local/bin /no-such-path
|
||||||
|
'';
|
||||||
|
|
||||||
|
configureFlags = ''
|
||||||
|
--without-arts
|
||||||
|
--with-ssl-dir=${openssl}
|
||||||
|
--with-extra-includes=${libjpeg}/include
|
||||||
|
--x-includes=${xlibs.libX11}/include
|
||||||
|
--x-libraries=${xlibs.libX11}/lib
|
||||||
|
'';
|
||||||
|
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user