Merge pull request #101796 from luc65r/pkg/tilp2

This commit is contained in:
Sandro 2021-01-25 01:11:50 +01:00 committed by GitHub
commit a36bf6faf9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 349 additions and 54 deletions

View file

@ -169,6 +169,7 @@
./programs/sway.nix
./programs/system-config-printer.nix
./programs/thefuck.nix
./programs/tilp2.nix
./programs/tmux.nix
./programs/traceroute.nix
./programs/tsm-client.nix

View file

@ -0,0 +1,28 @@
{ config, pkgs, lib, ... }:
with lib;
let
cfg = config.programs.tilp2;
in {
options.programs.tilp2 = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Enable tilp2 and udev rules for supported calculators.
'';
};
};
config = mkIf cfg.enable {
services.udev.packages = [
pkgs.libticables2
];
environment.systemPackages = [
pkgs.tilp2
];
};
}

View file

@ -0,0 +1,54 @@
{ stdenv
, lib
, fetchurl
, fetchpatch
, pkg-config
, autoreconfHook
, gnome2
, glib
, libtifiles2
, libticables2
, libticalcs2
, libticonv
}:
stdenv.mkDerivation rec {
pname = "gfm";
version = "1.08";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "0zq1a9mm54zr18dz2mqh79w1a126xwqz6dcrpjlbd1pnmg01l0q9";
};
patches = fetchpatch {
name = "remove-broken-kde-support.patch";
url = "https://aur.archlinux.org/cgit/aur.git/plain/remove-broken-kde-support.patch?h=gfm";
sha256 = "03yc8s2avicmv04f2ygg3r3q8l7kpsc94mhp6clp584kmjpjqag5";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
gnome2.gtk
gnome2.libglade
glib
libtifiles2
libticables2
libticalcs2
libticonv
];
NIX_CFLAGS_COMPILE = "-I${libticables2}/include/tilp2";
meta = with lib; {
changelog = "http://lpg.ticalc.org/prj_tilp/news.html";
description = "Group File Manager (GFM) allows manipulation of single/group/tigroup files";
homepage = "http://lpg.ticalc.org/prj_gfm/index.html";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ siraben luc65r ];
platforms = with platforms; linux ++ darwin;
};
}

View file

@ -0,0 +1,56 @@
{ stdenv
, lib
, fetchurl
, fetchpatch
, autoreconfHook
, pkg-config
, intltool
, glib
, gnome2
, gfm
, libticables2
, libticalcs2
, libticonv
, libtifiles2
}:
stdenv.mkDerivation rec {
pname = "tilp2";
version = "1.18";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "0isf73bjwk06baz2gm3vpdh600gqck9ca4aqxzb089dmxriv6fkv";
};
patches = fetchpatch {
name = "remove-broken-kde-support.patch";
url = "https://aur.archlinux.org/cgit/aur.git/plain/remove-broken-kde-support.patch?h=tilp";
sha256 = "1fn6vh7r45spkwpmkvffkbn7zrcsdrs5mjmspd5rwi3jc12cy3ny";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
intltool
];
buildInputs = [
glib
gnome2.gtk
gnome2.libglade
gfm
libticables2
libticalcs2
libticonv
libtifiles2
];
meta = with lib; {
changelog = "http://lpg.ticalc.org/prj_tilp/news.html";
description = "Transfer data between Texas Instruments graphing calculators and a computer";
homepage = "http://lpg.ticalc.org/prj_tilp/";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ luc65r ];
platforms = with platforms; linux ++ darwin;
};
}

View file

@ -0,0 +1,64 @@
{ stdenv
, lib
, fetchurl
, pkg-config
, autoreconfHook
, glib
, libusb1
}:
stdenv.mkDerivation rec {
pname = "libticables2";
version = "1.3.5";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "08j5di0cgix9vcpdv7b8xhxdjkk9zz7fqfnv3l4apk3jdr8vcvqc";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
libusb1
glib
];
configureFlags = [
"--enable-libusb10"
];
postInstall = ''
mkdir -p $out/etc/udev/rules.d
cat > $out/etc/udev/rules.d/69-libsane.rules << EOF
ACTION!="add", GOTO="libticables_end"
# serial device (assume TI calculator)
KERNEL=="ttyS[0-3]", ENV{ID_PDA}="1"
# parallel device (assume TI calculator)
SUBSYSTEM=="ppdev", ENV{ID_PDA}="1"
# SilverLink
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="e001", ENV{ID_PDA}="1"
# TI-84+ DirectLink
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="e003", ENV{ID_PDA}="1"
# TI-89 Titanium DirectLink
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="e004", ENV{ID_PDA}="1"
# TI-84+ SE DirectLink
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="e008", ENV{ID_PDA}="1"
# TI-Nspire DirectLink
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="e012", ENV{ID_PDA}="1"
LABEL="libticables_end"
EOF
'';
meta = with lib; {
changelog = "http://lpg.ticalc.org/prj_tilp/news.html";
description = "This library is part of the TiLP framework";
homepage = "http://lpg.ticalc.org/prj_tilp/";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ siraben luc65r ];
platforms = with platforms; linux ++ darwin;
};
}

View file

@ -0,0 +1,50 @@
{ stdenv
, lib
, fetchurl
, pkg-config
, autoreconfHook
, glib
, libticonv
, libtifiles2
, libticables2
, lzma
, bzip2
, acl
, libobjc
}:
stdenv.mkDerivation rec {
pname = "libticalcs2";
version = "1.1.9";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "08c9wgrdnyqcs45mx1bjb8riqq81bzfkhgaijxzn96rhpj40fy3n";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
glib
libticonv
libtifiles2
libticables2
lzma
bzip2
] ++ lib.optionals stdenv.isLinux [
acl
] ++ lib.optionals stdenv.isDarwin [
libobjc
];
meta = with lib; {
changelog = "http://lpg.ticalc.org/prj_tilp/news.html";
description = "This library is part of the TiLP framework";
homepage = "http://lpg.ticalc.org/prj_tilp/";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ siraben luc65r ];
platforms = with platforms; linux ++ darwin;
};
}

View file

@ -0,0 +1,38 @@
{ stdenv
, lib
, fetchurl
, pkg-config
, autoreconfHook
, glib
}:
stdenv.mkDerivation rec {
pname = "libticonv";
version = "1.1.5";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "0y080v12bm81wgjm6fnw7q0yg7scphm8hhrls9njcszj7fkscv9i";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
glib
];
configureFlags = [
"--enable-iconv"
];
meta = with lib; {
changelog = "http://lpg.ticalc.org/prj_tilp/news.html";
description = "This library is part of the TiLP framework";
homepage = "http://lpg.ticalc.org/prj_tilp/";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ siraben luc65r ];
platforms = with platforms; linux ++ darwin;
};
}

View file

@ -0,0 +1,38 @@
{ stdenv
, lib
, fetchurl
, pkg-config
, autoreconfHook
, glib
, libarchive
, libticonv
}:
stdenv.mkDerivation rec {
pname = "libtifiles2";
version = "1.1.7";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "10n9mhlabmaw3ha5ckllxfy6fygs2pmlmj5v6w5v62bvx54kpils";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
glib
libarchive
libticonv
];
meta = with lib; {
changelog = "http://lpg.ticalc.org/prj_tilp/news.html";
description = "This library is part of the TiLP framework";
homepage = "http://lpg.ticalc.org/prj_tilp/";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ siraben luc65r ];
platforms = with platforms; linux ++ darwin;
};
}

View file

@ -1,63 +1,15 @@
{ stdenv
, fetchurl
, lib
, libarchive
, autoreconfHook
, pkg-config
, glib
, libusb1
, darwin
, acl
, lzma
, bzip2
, gnome2
, libticonv
, libtifiles2
, libticables2
, libticalcs2
}:
let
libticonv = stdenv.mkDerivation rec {
pname = "libticonv";
version = "1.1.5";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "0y080v12bm81wgjm6fnw7q0yg7scphm8hhrls9njcszj7fkscv9i";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ glib ];
configureFlags = [ "--enable-iconv" ];
};
libticables2 = stdenv.mkDerivation rec {
pname = "libticables2";
version = "1.3.5";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "08j5di0cgix9vcpdv7b8xhxdjkk9zz7fqfnv3l4apk3jdr8vcvqc";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ glib libusb1 ];
configureFlags = [ "--enable-libusb10" ];
};
libticalcs2 = stdenv.mkDerivation rec {
pname = "libticalcs2";
version = "1.1.9";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "08c9wgrdnyqcs45mx1bjb8riqq81bzfkhgaijxzn96rhpj40fy3n";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ glib libticables2 libticonv libtifiles2 lzma bzip2 ]
++ lib.optionals stdenv.isLinux [ acl ]
++ lib.optionals stdenv.isDarwin [ darwin.libobjc ];
};
libtifiles2 = stdenv.mkDerivation rec {
pname = "libtifiles2";
version = "1.1.7";
src = fetchurl {
url = "mirror://sourceforge/tilp/${pname}-${version}.tar.bz2";
sha256 = "10n9mhlabmaw3ha5ckllxfy6fygs2pmlmj5v6w5v62bvx54kpils";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ glib libticonv libarchive lzma bzip2 ];
};
in
stdenv.mkDerivation rec {
pname = "tilem";
version = "2.0";
@ -72,7 +24,7 @@ stdenv.mkDerivation rec {
homepage = "http://lpg.ticalc.org/prj_tilem/";
description = "Emulator and debugger for Texas Instruments Z80-based graphing calculators";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ siraben ];
maintainers = with maintainers; [ siraben luc65r ];
platforms = platforms.linux ++ platforms.darwin;
};
}

View file

@ -8207,6 +8207,8 @@ in
tilem = callPackage ../misc/emulators/tilem { };
tilp2 = callPackage ../applications/science/math/tilp2 { };
timemachine = callPackage ../applications/audio/timemachine { };
timelapse-deflicker = callPackage ../applications/graphics/timelapse-deflicker { };
@ -13806,6 +13808,8 @@ in
gflags = callPackage ../development/libraries/gflags { };
gfm = callPackage ../applications/science/math/gfm { };
gperftools = callPackage ../development/libraries/gperftools { };
grab-site = callPackage ../tools/backup/grab-site { };
@ -15285,6 +15289,16 @@ in
libthreadar = callPackage ../development/libraries/libthreadar { };
libticables2 = callPackage ../development/libraries/libticables2 { };
libticalcs2 = callPackage ../development/libraries/libticalcs2 {
inherit (darwin) libobjc;
};
libticonv = callPackage ../development/libraries/libticonv { };
libtifiles2 = callPackage ../development/libraries/libtifiles2 { };
libtiff = callPackage ../development/libraries/libtiff { };
libtiger = callPackage ../development/libraries/libtiger { };