diff --git a/app-misc/lcd4linux/Manifest b/app-misc/lcd4linux/Manifest index 5957d1fca66b0..db302daea9197 100644 --- a/app-misc/lcd4linux/Manifest +++ b/app-misc/lcd4linux/Manifest @@ -1 +1,2 @@ DIST lcd4linux-0.10.1-RC2.tar.gz 386188 BLAKE2B 7d396ee15e00212eb314721cd9627147ec1654f43fff1d3ae3f8c38d33d8d133f1fd5c53ef2b78eba7afefb7f65a53810da52a903911abdd95383b2b2c28d06f SHA512 8c4299f50ab4068d4106ba32309f4f66bfedf382a4aed7495cf400d22c57c22c4dfabd80f7e4355417c5c0d964e69f0c268a50bae6924b759b720bd728a969f9 +DIST lcd4linux-0.11.0_pre20170527.tar.bz2 478823 BLAKE2B 7b332e7262781dd0dc954a0576890dda78ecbeab9dc003d1d5b84a643ad522d57e32a04a2aa6fbe13b18e4699d07d88412e19c81739fafdf98ba327b151061a9 SHA512 c131b9cb04bb0ff4dc46c1e3ab8f5dcda309bbef89bcb670508f9afe7c515d6ccfe79a03782be4f4b2ba4aaf977cd13c0059805e5b7230216e39ee3421b0f143 diff --git a/app-misc/lcd4linux/files/lcd4linux-r1.initd b/app-misc/lcd4linux/files/lcd4linux-r1.initd new file mode 100644 index 0000000000000..44ca73e9aabec --- /dev/null +++ b/app-misc/lcd4linux/files/lcd4linux-r1.initd @@ -0,0 +1,29 @@ +#!/sbin/openrc-run +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +if [ "${SVCNAME}" = "lcd4linux" ]; then + config="/etc/lcd4linux/lcd4linux.conf" + name="LCD4Linux" + pidfile="/run/lcd4linux.pid" +else + config="/etc/lcd4linux/lcd4linux.${SVCNAME#lcd4linux.}.conf" + name="LCD4Linux (${SVCNAME#lcd4linux.})" + pidfile="/run/lcd4linux.${SVCNAME#lcd4linux.}.pid" +fi + +command="/usr/bin/lcd4linux" +command_args="-f ${config} -p ${pidfile}" +command_background="true" +command_group="root" +command_user="root" + +start_pre() { + if [ ! -f "${config}" ]; then + eerror "Please create ${config} before starting LCD4Linux!" + return 1 + else + checkpath -f -m 600 -o "${command_user}:${command_group}" -q "${config}" + return 0 + fi +} diff --git a/app-misc/lcd4linux/lcd4linux-0.11.0_pre20170527.ebuild b/app-misc/lcd4linux/lcd4linux-0.11.0_pre20170527.ebuild new file mode 100644 index 0000000000000..098e0b9b1d05e --- /dev/null +++ b/app-misc/lcd4linux/lcd4linux-0.11.0_pre20170527.ebuild @@ -0,0 +1,161 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 ) + +inherit autotools flag-o-matic python-single-r1 + +DESCRIPTION="A small program that grabs information and displays it on an external LCD" +HOMEPAGE="https://lcd4linux.bulix.org/" +SRC_URI="https://www.bl4ckb0x.de/files/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="dmalloc outb" +REQUIRED_USE="?? ( lcd_devices_hd44780 lcd_devices_hd44780-i2c ) + python? ( ${PYTHON_REQUIRED_USE} )" + +# Define the list of valid lcd devices. +# Some drivers were removed from this list: +# - lcdlinux: It's an ancient driver, which needs app-misc/lcd-linux, that made it never to the portage tree. +# - lcdlinux: Besides, app-misc/lcd-linux won't compile on a modern linux kernel. +# - st2205: It's needs dev-libs/libst2205, which made it never to the portage tree and is quite outdated. +IUSE_LCD_DEVICES=( ASTUSB BeckmannEgle BWCT CrystalFontz Curses Cwlinux D4D DPF EA232graphic EFN FutabaVFD + FW8888 G15 GLCD2USB HD44780 HD44780-I2C IRLCD LCD2USB LCDTerm LEDMatrix LPH7508 LUIse LW_ABP M50530 + MatrixOrbital MatrixOrbitalGX MilfordInstruments MDM166A Newhaven Noritake NULL Pertelian PHAnderson + PICGraphic picoLCD picoLCDGraphic PNG PPM RouterBoard Sample SamsungSPF serdisplib ShuttleVFD + SimpleLCD T6963 TeakLCM Trefon ULA200 USBHUB USBLCD VNC WincorNixdorf X11 ) + +# Define the list of valid lcd4linux plugins. +# Some plugins were removed from this list: +# - imon: Uses telmond, which is only available on a fli4l router or an eisfair server. +# - ppp: It has been replaced by the netdev plugin. +# - seti: SETI@home software was replaced by sci-misc/boinc, which is not compatible. +# - xmms: XMMS software was replaced by media-sound/xmms2, which is not compatible. +IUSE_LCD4LINUX_PLUGINS=( apm asterisk button_exec cpuinfo dbus diskstats dvb exec event + fifo file gps hddtemp huawei i2c_sensors iconv isdn kvv + loadavg meminfo mpd mpris_dbus mysql netdev netinfo pop3 + proc_stat python qnaplog raspi sample statfs uname uptime + w1retap wireless ) + +# Add supported drivers from 'IUSE_LCD_DEVICES' to 'IUSE' and 'REQUIRED_USE' +REQUIRED_USE+=" || ( " +for LCD_DEVICE in "${IUSE_LCD_DEVICES[@]}"; do + LCD_DEVICE=${LCD_DEVICE,,} + IUSE+=" lcd_devices_${LCD_DEVICE} " + REQUIRED_USE+=" lcd_devices_${LCD_DEVICE} " +done +REQUIRED_USE+=" ) " +unset LCD_DEVICE + +# Add supported plugins from 'IUSE_LCD4LINUX_PLUGINS' to 'IUSE' and 'REQUIRED_USE' +IUSE+=" ${IUSE_LCD4LINUX_PLUGINS[*]} " +REQUIRED_USE+=" || ( ${IUSE_LCD4LINUX_PLUGINS[*]} ) " + +# Define dependencies for all drivers in 'IUSE_LCD_DEVICES' +DEPEND_LCD_DEVICES="lcd_devices_astusb? ( virtual/libusb:0= ) + lcd_devices_bwct? ( virtual/libusb:0= ) + lcd_devices_curses? ( sys-libs/ncurses:0= ) + lcd_devices_dpf? ( virtual/libusb:0= ) + lcd_devices_g15? ( virtual/libusb:0= ) + lcd_devices_glcd2usb? ( virtual/libusb:0= ) + lcd_devices_irlcd? ( virtual/libusb:0= ) + lcd_devices_lcd2usb? ( virtual/libusb:0= ) + lcd_devices_ledmatrix? ( virtual/libusb:0= ) + lcd_devices_luise? ( dev-libs/luise-bin + virtual/libusb:0= ) + lcd_devices_matrixorbitalgx? ( virtual/libusb:0= ) + lcd_devices_mdm166a? ( virtual/libusb:0= ) + lcd_devices_picolcd? ( virtual/libusb:0= ) + lcd_devices_picolcdgraphic? ( virtual/libusb:0= ) + lcd_devices_png? ( media-libs/gd[png] + media-libs/libpng:0= ) + lcd_devices_ppm? ( media-libs/gd ) + lcd_devices_samsungspf? ( virtual/libusb:0= ) + lcd_devices_serdisplib? ( dev-libs/serdisplib ) + lcd_devices_shuttlevfd? ( virtual/libusb:0= ) + lcd_devices_trefon? ( virtual/libusb:0= ) + lcd_devices_ula200? ( dev-embedded/libftdi:1= + virtual/libusb:0= ) + lcd_devices_usbhub? ( virtual/libusb:0= ) + lcd_devices_usblcd? ( virtual/libusb:0= ) + lcd_devices_vnc? ( net-libs/libvncserver ) + lcd_devices_x11? ( x11-libs/libX11 )" + +# Define dependencies for all plugins in 'IUSE_LCD4LINUX_PLUGINS' +DEPEND_LCD4LINUX_PLUGINS="asterisk? ( net-misc/asterisk ) + dbus? ( sys-apps/dbus ) + gps? ( dev-libs/nmeap ) + hddtemp? ( app-admin/hddtemp ) + iconv? ( virtual/libiconv ) + mpd? ( media-libs/libmpd ) + mpris_dbus? ( sys-apps/dbus ) + mysql? ( || ( dev-db/mariadb-connector-c + dev-db/mysql-connector-c ) ) + python? ( ${PYTHON_DEPS} ) + wireless? ( || ( net-wireless/iw + net-wireless/wireless-tools ) )" + +RDEPEND="dmalloc? ( dev-libs/dmalloc ) + ${DEPEND_LCD_DEVICES} + ${DEPEND_LCD4LINUX_PLUGINS}" + +DEPEND="${RDEPEND}" + +pkg_setup() { + if use python; then + python-single-r1_pkg_setup + fi +} + +src_prepare() { + default + + eautoreconf +} + +src_configure() { + # Enable all users enabled lcd devices + local myeconfargs_lcd_devices + for lcd_device in "${IUSE_LCD_DEVICES[@]}"; do + if use "lcd_devices_${lcd_device,,}"; then + myeconfargs_lcd_devices+=",${lcd_device}" + fi + done + + # Enable all users enabled lcd4linux plugins + local myeconfargs_lcd4linux_plugins + for lcd4linux_plugin in "${IUSE_LCD4LINUX_PLUGINS[@]}"; do + if use "${lcd4linux_plugin}"; then + myeconfargs_lcd4linux_plugins+=",${lcd4linux_plugin}" + fi + done + + local myeconfargs=( + --disable-rpath + $(use_with dmalloc) + $(use_with outb) + $(use_with python) + $(use_with lcd_devices_x11 x) + --with-drivers="${myeconfargs_lcd_devices#,}" + --with-plugins="${myeconfargs_lcd4linux_plugins#,}" + --x-include="/usr/include" + --x-libraries="/usr/$(get_libdir)" + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + + # Install sample config, and must have 600, as lcd4linux checks this. + insinto /etc/lcd4linux + insopts -m 0600 + doins lcd4linux.conf.sample + + newinitd "${FILESDIR}/lcd4linux-r1.initd" lcd4linux +} diff --git a/app-misc/lcd4linux/metadata.xml b/app-misc/lcd4linux/metadata.xml index 2d2a4720b1533..a359d32d1f1ee 100644 --- a/app-misc/lcd4linux/metadata.xml +++ b/app-misc/lcd4linux/metadata.xml @@ -1,14 +1,56 @@ - - - LCD4Linux is a small program that grabs information from the kernel and some - subsystems and displays it on an external liquid crystal display. It is - fully configurable and supports many data sources, displays and plugins. - - - Add support for display of mpd controlled music - (media-libs/libmpd) - + + ck+gentoo@bl4ckb0x.de + Conrad Kostecki + + + proxy-maint@gentoo.org + Proxy Maintainers + + + LCD4Linux is a small program that grabs information from the kernel + and some subsystems and displays it on an external liquid crystal display. + + + Enable the APM plugin. + Enable the Asterisk plugin. + Enable the Button plugin, to execute something on keypress. + Enable the cpuinfo plugin. + Enable the dbus plugin. + Enable the diskstats plugin. + Enable dmalloc for debugging. + Enable support for the DVB plugin. + Enable the event plugin. + Enable the exec plugin, to read output from external programs. + Enable the FIFO (First-In, First-Out) plugin. + Enable the file plugin, to read from input from files. + Enable the gps plugin, for reading gps coordinates. + Enable the hddtemp plugin, to read from the hddtemp daemon. + Enable the huawei plugin, to read from a huawei device. + Enable the i2c_sensors plugin, to read sensor data. + Enable the iconv plugin, to convert between encodings. + Enable the isdn plugin, to get information about ISDN. + Enable the kvv plugin, to get realtime train schedule from the Karlsruher Verkehrsverbund. + Enable the loadavg plugin, to get stats load + Enable the meminfo plugin, to get memory statistics. + Enable the mpd plugin, to read from the Music Player Daemon. + Enable the mpris plugin, to read data via dbus for mpris. + Enable the mysql plugin, to get mysql database information. + Enable the netdev plugin, to get interface statistics. + Enable the netinfo plugin, to get more interface statistic. + Enable raw i/o access. + Enable the pop3 plugin, to get notified about new mails. + Enable the proc_stat plugin, to read data from the proc file system. + Enable support for dev-lang/python and enable the python plugin, to execute own python scripts. + Enable the qnaplog plugin, to read a log from a QNAP device. + Enable the raspi plugin, to read sensor data from a Raspberry Pi. + Enable the sample plugin. + Enable the statfs plugin, to get statistics about the file system. + Enable the uname plugin, to get the output of uname. + Enable the uptime plugin. + Enable the w1retap plugin. + Enable the wireless plugin, to get wireless statistics. + diff --git a/profiles/desc/lcd_devices.desc b/profiles/desc/lcd_devices.desc index df6352251435e..50c84dd6a520f 100644 --- a/profiles/desc/lcd_devices.desc +++ b/profiles/desc/lcd_devices.desc @@ -5,20 +5,29 @@ # Keep it sorted. acoolsdcm - Add support for Alphacool USB display modules +astusb - Add support for ASTUSB LCD modules bayrad - Add support for BayRAD LCD modules by EMAC beckmannegle - Add support for Beckmann+Egle "Mini Terminals" and "Compact Terminals" bwct - Add support for BWCT USB LCD displays cfontz633 - Add support for CrystalFontz 633 chipset displays cfontz - Add support for CrystalFontz displays cfontzpacket - Add support for CrystalFontz chipsets CFA-631, CFA-633 and CFA-635 +crystalfontz - Add support for modern Crystalfontz display modules +curses - Add support for a ncurses based virtual display cwlinux - Add support for serial / USB displays CW12232 and CW1602 by CwLinux +d4d - Add support for 4D Systems display graphics modules with SGC PmmC ddusbt - Add support for DD usb touch screen directgfx - Add support for output via SDL displaylink - Add support for displaylink based LCDs +dpf - Add support for DPF display modulees ea232 - Add support for the Electronic Assembly RS232 graphic driver +ea232graphic - Add support for the Electronic Assembly RS232 graphic driver ea65 - Add support for the VFD in the AOpen XC Cube-AV EA65 media barebone +efn - Add support for the English Font display Network based displays eyeboxone - Add support for the displays on Rightvision's EyeboxOne server framebuffer - Add support for output on a framebuffer +futabavfd - Add support for Futaba M402SD06GL display module +fw8888 - Add support for the Allnet FW8888 firewall appliance LCD g15 - Add support for Logitech G15 Keyboard LCDs glcd2usb - Add support for GLCD2USB LCD module glk - Add support for MatrixOrbital GLK chipset @@ -26,12 +35,14 @@ goldelox - Add support for Goldelox MD1 display modules graphlcd - Meta-driver to support drivers via app-misc/graphlcd-base hd44780 - Add support for Hitachi HD44780 and compatible displays hd44780i2c - Enable hd44780 via i2c instead of parallel port driver +hd44780-i2c Enable hd44780 via i2c instead of parallel port driver i2500vfd - Add support for the Intra2net Intranator 2500 VFD display i2c - Add generic support for i2c based modules icpa106 - Add support for ICP A106 alarm/LCD boards for 19" racks imon - Add support for Soundgraph/Ahanix/Silverstone/Uneed/Accent iMON IR/VFD modules (Antec Fusion) imonlcd - Add support for Soundgraph iMON LCD modules (Antec Fusion) iowarrior - Add support for IO-Warrior displays +irlcd - Add support for the USBtiny DIY USB to IR receiver irtrans - Add support for the 16x2 IRTrans VFD device ks0108 - Add support for KS0108 based graphical LCDs l4m - Add support for Linux4Media displays @@ -47,27 +58,37 @@ lh155 - Add support for Sharp LH155 based displays lis - Add support for the VLSystem L.I.S MCE 2005 VFD lph7508 - Add support for the Pollin LPH7508 luise - Add support for the Wallbraun Electronics LCD-USB-Interface to Hitachi SP14Q002 +lw_abp - Add support for the LW_ABP display module +matrixorbital - Add support for Matrix Orbital LCDs +matrixorbitalgx - Add support for Matrix Orbital graphical LCDs m50530 - Add support for M50530 and compatible displays md8800 - Add support for the VFD of the Medion MD8800 PC mdm166a - Add support for the Futaba / Targa USB Graphic Vacuum Fluorescent Display milfordbpk - Add support for Milford Instruments BPK serial interface board for HD44780 +milfordinstruments - Add support for Milford Intruments LCDs ms6931 - Add support for MSI-6931 displays in MSI rack servers mtcs16209x - Add support for MTC_S16209x displays mtxorb - Add support for Matrix Orbital LCD* LKD* VFD* and VKD* displays ncurses - Add support for emulated LCD display on terminal using ncurses +newhaven - Add support for various Newhaven displays nokcol - Add support for Nokias 3510i and 3530 display modules noritake - Add support for the Noritake GU128x32-311 graphical display noritakevfd - Add support for the Noritake VFD Device CU20045SCPB-T28A null - Add support for a NULL driver (for testing) pcd8544 - Add support for PCD8544 and compilant display modules +pertelian - Add support for the Pertelian X2040 displays +phanderson - Add support for the PHAnderson serial-to-HD44780 controller +picgraphic - Add support for PIC graphic displays picolcd - Add support for Mini-Box's picoLCD +picolcdgraphic Add support for Mini-Box's graphical picoLCD png - Add support for PNG output ppm - Add support for PNG output pyramid - Add support for the Pyramid LCD device remote - Add suport for remote display modules routerboard - Add support for the Router Board LCD port rs232 - Add support for generic RS232 based displays -SureElec - Add support drivers from the 'SURE electronics' shop +sample - Add support for the sample driver +samsungspf - Add support for Samsung SPF displays sed1330 - Add support for Seiko Epson SED1330/1335 graphical displays (S1D13300/S1D13305) sed133x - Add suppor tfor SED133x based display modules sed153x - Add support for OPTREX 323 based display modules @@ -82,14 +103,19 @@ sli - Add support for a Wirz SLI display ssdoled - Add support for Bolymin BL160128A OLED display stv5730 - Add support for STV5730A on-screen display chips stv8105 - Add support for STV8105 on-screen display chips +SureElec - Add support drivers from the 'SURE electronics' shop svga - Add support for output via media-libs/svgalib t6963 - Add support for Toshiba T6963 based LCD displays +teaklcm - Add support for TeakLCM displays text - Add support for TextMode displaying trefon - Add support for Trefon USB LCD displays tyan - Add support for LCDs of the Barebone GS series ula200 - Add support for ULA200 USB devices that allow USB connection of HD44780s usbhub - Add support for USBHUB displays usblcd - Add support for USBLCD displays +vnc - Add support for output on a vnc connection wincor - Add support for the WincorNixdorf serial cashier displays BA63 and BA66 +wincornixdorf - Add support for the WincorNixdorf serial cashier displays BA63 and BA66 X - Add support for X11 displaying +x11 - Add support for X11 displaying xosd - Add support for xosdlib