mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-24 04:33:24 +00:00
This port provides a utility for controlling USB OLED display found
on some ASUS laptops such as G-series models. Originally it was written by Christian Lamparter <chunkeey@web.de> for Linux and the early version is still available from here: https://launchpad.net/asusoled Now it is almost rewrite of the code with a lot of new features and improvements by Jung-uk Kim <jkim@FreeBSD.org>.
This commit is contained in:
parent
9b36d18d6f
commit
53a60a3918
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=220597
@ -37,6 +37,7 @@
|
||||
SUBDIR += asmem
|
||||
SUBDIR += asmon
|
||||
SUBDIR += asr-utils
|
||||
SUBDIR += asusoled
|
||||
SUBDIR += ataidle
|
||||
SUBDIR += atitvout
|
||||
SUBDIR += automounter
|
||||
|
50
sysutils/asusoled/Makefile
Normal file
50
sysutils/asusoled/Makefile
Normal file
@ -0,0 +1,50 @@
|
||||
# Ports collection makefile for: asusoled
|
||||
# Date created: 2008-09-11
|
||||
# Whom: Jung-uk Kim <jkim@FreeBSD.org>
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
PORTNAME= asusoled
|
||||
PORTVERSION= 0.10
|
||||
CATEGORIES= sysutils
|
||||
MASTER_SITES= http://people.freebsd.org/~jkim/
|
||||
DISTNAME= ${PORTNAME}-${PORTVERSION}
|
||||
|
||||
MAINTAINER= jkim@FreeBSD.org
|
||||
COMMENT= Utility for ASUS USB OLED Display
|
||||
|
||||
LIB_DEPENDS= usb-0.1.8:${PORTSDIR}/devel/libusb
|
||||
RUN_DEPENDS= ${FONTDIR}/TTF/luxisr.ttf:${PORTSDIR}/x11-fonts/font-bh-ttf
|
||||
|
||||
USE_SDL= image sdl ttf
|
||||
USE_RC_SUBR= asusoled.sh oled_clock.sh
|
||||
|
||||
PORTDATA= asus.png asus_clock.png
|
||||
PORTDOCS= README.FreeBSD
|
||||
PLIST_FILES= sbin/asusoled
|
||||
SUB_FILES= asusoled.sh oled_clock.sh pkg-message
|
||||
|
||||
MAKE_ARGS+= TTF_FONT=${FONTDIR}/TTF/luxisr.ttf
|
||||
|
||||
FONTDIR?= ${LOCALBASE}/lib/X11/fonts
|
||||
|
||||
post-install:
|
||||
.if !defined(NOPORTDATA)
|
||||
@${MKDIR} ${DATADIR}
|
||||
.for i in ${PORTDATA}
|
||||
@${INSTALL_DATA} ${WRKSRC}/data/${i} ${DATADIR}
|
||||
.endfor
|
||||
.endif
|
||||
.if !defined(NOPORTDOCS)
|
||||
@${CAT} ${PKGMESSAGE} > ${WRKSRC}/README.FreeBSD
|
||||
@${MKDIR} ${DOCSDIR}
|
||||
.for i in ${PORTDOCS}
|
||||
@${INSTALL_DATA} ${WRKSRC}/${i} ${DOCSDIR}
|
||||
.endfor
|
||||
.endif
|
||||
@${ECHO}
|
||||
@${CAT} ${PKGMESSAGE}
|
||||
@${ECHO}
|
||||
|
||||
.include <bsd.port.mk>
|
3
sysutils/asusoled/distinfo
Normal file
3
sysutils/asusoled/distinfo
Normal file
@ -0,0 +1,3 @@
|
||||
MD5 (asusoled-0.10.tar.gz) = b49419fd3abb508fb264ee56c55294a7
|
||||
SHA256 (asusoled-0.10.tar.gz) = 2343f8bde7b9672a5602e81c2ce4992839c7f5175260ea57f0412b340e1027e3
|
||||
SIZE (asusoled-0.10.tar.gz) = 19051
|
54
sysutils/asusoled/files/asusoled.sh.in
Normal file
54
sysutils/asusoled/files/asusoled.sh.in
Normal file
@ -0,0 +1,54 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
# PROVIDE: asusoled
|
||||
# REQUIRE: DAEMON
|
||||
# KEYWORD: nojail shutdown
|
||||
#
|
||||
# Add the following lines to /etc/rc.conf to enable the ASUS OLED display:
|
||||
#
|
||||
# asusoled_enable="YES"
|
||||
#
|
||||
|
||||
asusoled_enable=${asusoled_enable-"NO"}
|
||||
asusoled_flags=${asusoled_flags-"-f %%PREFIX%%/share/asusoled/asus.png"}
|
||||
asusoled_command=${asusoled_command-""}
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name=asusoled
|
||||
rcvar=`set_rcvar`
|
||||
|
||||
start_cmd=asusoled_start
|
||||
stop_cmd=asusoled_stop
|
||||
|
||||
asusoled_bin="%%PREFIX%%/sbin/asusoled"
|
||||
asusoled_pidfile="/var/run/${name}.pid"
|
||||
|
||||
asusoled_start() {
|
||||
if checkyesno asusoled_enable
|
||||
then
|
||||
echo "Starting asusoled."
|
||||
${asusoled_bin} -e || exit 1
|
||||
if test ! -z "${asusoled_command}"
|
||||
then
|
||||
${asusoled_bin} ${asusoled_flags} -c "${asusoled_command}"
|
||||
else
|
||||
${asusoled_bin} ${asusoled_flags}
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
asusoled_stop() {
|
||||
if checkyesno asusoled_enable
|
||||
then
|
||||
echo "Stopping asusoled."
|
||||
test -f ${asusoled_pidfile} &&
|
||||
${asusoled_bin} -k -p ${asusoled_pidfile}
|
||||
${asusoled_bin} -d
|
||||
fi
|
||||
}
|
||||
|
||||
load_rc_config ${name}
|
||||
run_rc_command "$1"
|
50
sysutils/asusoled/files/oled_clock.sh.in
Normal file
50
sysutils/asusoled/files/oled_clock.sh.in
Normal file
@ -0,0 +1,50 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
# PROVIDE: oled_clock
|
||||
# REQUIRE: DAEMON
|
||||
# KEYWORD: nojail shutdown
|
||||
#
|
||||
# Add the following lines to /etc/rc.conf to enable the ASUS OLED clock:
|
||||
#
|
||||
# oled_clock_enable="YES"
|
||||
#
|
||||
|
||||
oled_clock_enable=${oled_clock_enable-"NO"}
|
||||
oled_clock_flags=${oled_clock_flags-"-R -i -w -P 1"}
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name=oled_clock
|
||||
rcvar=`set_rcvar`
|
||||
|
||||
start_cmd=oled_clock_start
|
||||
stop_cmd=oled_clock_stop
|
||||
|
||||
asusoled_bin="%%PREFIX%%/sbin/asusoled"
|
||||
oled_clock_pidfile="/var/run/${name}.pid"
|
||||
oled_clock_command="LANG=en_US.UTF-8 /bin/date '+%a %b %d %R %Y'"
|
||||
|
||||
oled_clock_start() {
|
||||
if checkyesno oled_clock_enable
|
||||
then
|
||||
echo "Starting oled_clock."
|
||||
${asusoled_bin} -e || exit 1
|
||||
${asusoled_bin} ${oled_clock_flags} -D -p ${oled_clock_pidfile} \
|
||||
-c "${oled_clock_command}"
|
||||
fi
|
||||
}
|
||||
|
||||
oled_clock_stop() {
|
||||
if checkyesno oled_clock_enable
|
||||
then
|
||||
echo "Stopping oled_clock."
|
||||
test -f ${oled_clock_pidfile} && \
|
||||
${asusoled_bin} -k -p ${oled_clock_pidfile}
|
||||
${asusoled_bin} -d
|
||||
fi
|
||||
}
|
||||
|
||||
load_rc_config ${name}
|
||||
run_rc_command "$1"
|
46
sysutils/asusoled/files/pkg-message.in
Normal file
46
sysutils/asusoled/files/pkg-message.in
Normal file
@ -0,0 +1,46 @@
|
||||
Please note this utility requires ugen(4). Try:
|
||||
|
||||
kldstat -m uhub/ugen
|
||||
|
||||
If it is loaded, you will see something like the following:
|
||||
|
||||
Id Refs Name
|
||||
31 1 uhub/ugen
|
||||
|
||||
If it is not loaded, then try:
|
||||
|
||||
kldload ugen
|
||||
|
||||
Unfortunately early versions of uhid(4) conflict with ASUS LCM. If this
|
||||
utility does not work for you, try unloading it first:
|
||||
|
||||
kldunload uhid
|
||||
|
||||
If the driver is compiled into kernel, you cannot unload it, however.
|
||||
If so, you have to recompile kernel without the uhid support or to fix it
|
||||
for yourself. If you don't need uhid, just comment out "device uhid" line
|
||||
from your kernel configuration file and recompile kernel. If you need uhid,
|
||||
you have to touch two files:
|
||||
|
||||
http://docs.freebsd.org/cgi/mid.cgi?200803141559.m2EFxWs1074538
|
||||
|
||||
To build custom kernel, please read "Configuring the FreeBSD Kernel" section
|
||||
from the Handbook:
|
||||
|
||||
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html
|
||||
|
||||
Also, there are two example rcNG scripts, i.e., asusoled and oled_clock.
|
||||
You can enable 'asusoled' by adding:
|
||||
|
||||
asusoled_enable="YES"
|
||||
|
||||
in your /etc/rc.conf. If you just want to test it, run:
|
||||
|
||||
%%PREFIX%%/etc/rc.d/asusoled forcestart
|
||||
|
||||
You will see a black ASUS logo on white background from the display.
|
||||
Similarly, you can enable or test 'oled_clock', of course. :-)
|
||||
|
||||
Enjoy!
|
||||
|
||||
Jung-uk Kim <jkim@FreeBSD.org>
|
10
sysutils/asusoled/pkg-descr
Normal file
10
sysutils/asusoled/pkg-descr
Normal file
@ -0,0 +1,10 @@
|
||||
This port provides a utility for controlling USB OLED display found
|
||||
on some ASUS laptops such as G-series models.
|
||||
|
||||
Originally it was written by Christian Lamparter <chunkeey@web.de>
|
||||
for Linux and the early version is still available from here:
|
||||
|
||||
https://launchpad.net/asusoled
|
||||
|
||||
Now it is almost rewrite of the code with a lot of new features and
|
||||
improvements by Jung-uk Kim <jkim@FreeBSD.org>.
|
Loading…
Reference in New Issue
Block a user