Merge pull request #1714 from HiassofT/lircd-8.2

[8.2] backport lircd changes from master
This commit is contained in:
Christian Hewitt 2017-06-23 14:05:48 +04:00 committed by GitHub
commit 82b1247ca5
28 changed files with 907 additions and 794 deletions

View File

@ -17,7 +17,7 @@
################################################################################
PKG_NAME="LibreELEC-settings"
PKG_VERSION="6336f1e"
PKG_VERSION="bd144bb"
PKG_ARCH="any"
PKG_LICENSE="prop."
PKG_SITE="https://libreelec.tv"

View File

@ -0,0 +1,39 @@
# These are the default options to lircd, if installed as
# /etc/lirc/lirc_options.conf. See the lircd(8) and lircmd(8)
# manpages for info on the different options.
#
# Some tools including mode2 and irw uses values such as
# driver, device, plugindir and loglevel as fallback values
# in not defined elsewhere.
[lircd]
nodaemon = False
driver = default
device = /dev/lirc0
output = /run/lirc/lircd.socket
pidfile = /run/lirc/lircd.pid
plugindir = /usr/lib/lirc/plugins
permission = 666
allow-simulate = No
repeat-max = 600
#effective-user =
#listen = [address:]port
#connect = host[:port]
#loglevel = 6
#uinput = ...
#release = ...
#logfile = ...
[lircmd]
uinput = False
nodaemon = False
# modinit is not supported in LibreELEC
# [modinit]
# code = /usr/sbin/modprobe lirc_serial
# code1 = /usr/bin/setfacl -m g:lirc:rw /dev/uinput
# code2 = ...
# [lircd-uinput]
# release-timeout = 200

View File

@ -0,0 +1,8 @@
# Populated config files can be found at http://sf.net/p/lirc-remotes. The
# irdb-get(1) and lirc-setup(1) tools can be used to search and download
# config files.
#
# From 0.9.2 config files could just be dropped as-is in the lircd.conf.d
# directory and be included by this file.
include "lircd.conf.d/*.conf"

View File

@ -0,0 +1,37 @@
#
# this config file was automatically generated
# using lirc-0.8.2(macmini) on Tue Dec 11 11:35:26 2007
#
# contributed by Sebastian Schaetzel
#
# brand: Apple
# model no. of remote control: A1156
# devices being controlled by this remote: Mac mini, MacBookPro 15"
# SantaRosa (3.1), MacBook2
#
begin remote
name Apple_A1156
bits 8
eps 30
aeps 100
one 0 0
zero 0 0
pre_data_bits 24
pre_data 0x87EE81
gap 211982
toggle_bit_mask 0x0
ignore_mask 0x0000ff01
begin codes
KEY_VOLUMEUP 0x0B
KEY_VOLUMEDOWN 0x0D
KEY_REWIND 0x08
KEY_FORWARD 0x07
KEY_PLAYPAUSE 0x04
KEY_MENU 0x02
end codes
end remote

View File

@ -0,0 +1,77 @@
# this config file was manually generated
# using WinLIRC 0.6.5 (LIRC 0.6.1pre3) on Wed Feb 28 11:27:58 2007
#
# contributed by Luca Cristoforetti
#
# brand: Dream Multimedia Dreambox 7025
# model: URC-39930RJ0-03
# devices being controlled by this remote:
# This is a remote with an option of a universal
# TV. Use TV CODE: 0680
#
# (press TV, hold down shift until you got
# 2 blinks, enter the code and you get 2
# flashes for confirmation)
#
begin remote
name Dream_Multimedia_URC-39930
bits 24
flags SPACE_ENC
eps 25
aeps 100
header 3488 1710
one 426 415
zero 426 1287
ptrail 426
pre_data_bits 24
pre_data 0xBFFBFE
gap 73939
min_repeat 4
suppress_repeat 4
# uncomment to suppress unwanted repeats
toggle_bit 0
begin codes
KEY_POWER 0x0000000000FF4342
KEY_1 0x0000000000FFF7F6
KEY_2 0x0000000000FF7776
KEY_3 0x0000000000FFB7B6
KEY_4 0x0000000000FF3736
KEY_5 0x0000000000FFD7D6
KEY_6 0x0000000000FF5756
KEY_7 0x0000000000FF9796
KEY_8 0x0000000000FF1716
KEY_9 0x0000000000FFE7E6
KEY_0 0x0000000000FF6766
< 0x0000000000FF5F5E
> 0x0000000000FF2322
KEY_VOLUMEUP 0x0000000000FFFBFA
KEY_VOLUMEDOWN 0x0000000000FF7B7A
KEY_MUTE 0x0000000000FFB3B2
KEY_EXIT 0x0000000000DF84A5
KEY_CHANNELUP 0x0000000000FFD3D2
KEY_CHANNELDOWN 0x0000000000FF5352
KEY_INFO 0x0000000000FF6362
KEY_UP 0x0000000000FFADAC
KEY_LEFT 0x0000000000FF8D8C
KEY_RIGHT 0x0000000000FF0D0C
KEY_DOWN 0x0000000000FF2D2C
KEY_OK 0x0000000000FF6D6C
KEY_MENU 0x0000000000FF1E1F
KEY_AUDIO 0x0000000000FF3435
KEY_VIDEO 0x0000000000FF1312
KEY_BACKSPACE 0x0000000000FFF1F0
KEY_PLAY 0x0000000000FF7170
KEY_PAUSE 0x0000000000FFB1B0
KEY_FORWARD 0x0000000000FF3130
KEY_STOP 0x00000000007F6FEE
KEY_RADIO 0x0000000000FFB5B4
KEY_TEXT 0x00000000007F3FBE
KEY_TITLE 0x00000000007FBF3E
end codes
end remote

View File

@ -0,0 +1,178 @@
#
# brand: HP/Philips/Microsoft/Other
# model no. of remote control: Media Center Edition remote
# devices being controlled by this remote: myriad of devices with Media Center Edition receivers
#
# RC-6 config file
#
# source: http://home.hccnet.nl/m.majoor/projects_remote_control.htm
# http://home.hccnet.nl/m.majoor/pronto.pdf
#
# used by: Philips
#
#########
#
# Philips Media Center Edition remote control
# For use with the USB MCE ir receiver
#
# Dan Conti dconti|acm.wwu.edu
#
# Updated with codes for MCE 2005 Remote additional buttons
# *, #, Teletext, Red, Green, Yellow & Blue Buttons
# Note: TV power button transmits no code until programmed.
# Updated 12th September 2005
# Graham Auld - mce|graham.auld.me.uk
#
# Radio, Print, RecTV are only available on the HP Media Center remote control
#
#
# Updated with codes for MCE 2007 Remote additional buttons
# Visualization, Aspect, SlideShow, Eject
# Note:
# Blue, Yellow, Green, Red, and Teletext buttons do not exist on some HP remote
begin remote
name mceusb
bits 16
flags RC6|CONST_LENGTH
eps 30
aeps 100
header 2667 889
one 444 444
zero 444 444
pre_data_bits 21
pre_data 0x37FF0
gap 105000
toggle_bit 22
rc6_mask 0x100000000
min_repeat 4
# uncomment to suppress unwanted repeats
suppress_repeat 4
begin codes
#seen on HP Pavilion dv3t remote --Tim Mann, 3 Nov 2009
KEY_VIDEO 0x00007b7f
KEY_PLAYPAUSE 0x00007b91
#unused by HP remote
KEY_BLUE 0x00007ba1
KEY_YELLOW 0x00007ba2
KEY_GREEN 0x00007ba3
KEY_RED 0x00007ba4
KEY_TEXT 0x00007ba5
#ba6 - bae unused
BA6 0x00007ba6
BA7 0x00007ba7
BA8 0x00007ba8
BA9 0x00007ba9
BAA 0x00007baa
BAB 0x00007bab
BAC 0x00007bac
BAD 0x00007bad
BAE 0x00007bae
KEY_RADIO 0x00007baf
Print 0x00007bb1
#bb2 - bb4 unused
BB2 0x00007bb2
BB3 0x00007bb3
BB4 0x00007bb4
KEY_VIDEO 0x00007bb5
KEY_CAMERA 0x00007bb6
KEY_PVR 0x00007bb7
KEY_AUDIO 0x00007bb8
KEY_TV 0x00007bb9
#bba - bbf unused
BBA 0x00007bba
BBB 0x00007bbb
BBC 0x00007bbc
BBD 0x00007bbd
BBE 0x00007bbe
BBF 0x00007bbf
#bc1 - bca unused
BC1 0x00007bc1
BC2 0x00007bc2
BC3 0x00007bc3
BC4 0x00007bc4
BC5 0x00007bc5
BC6 0x00007bc6
BC7 0x00007bc7
BC8 0x00007bc8
BC9 0x00007bc9
BCA 0x00007bca
KEY_EJECTCD 0x00007bcb
SlideShow 0x00007bcc
Visualization 0x00007bcd
#bce - bcf unused
BCE 0x00007bce
BCF 0x00007bcf
#bd1 - bd7 unused
BD1 0x00007bd1
BD2 0x00007bd2
BD3 0x00007bd3
BD4 0x00007bd4
BD5 0x00007bd5
BD6 0x00007bd6
BD7 0x00007bd7
KEY_ANGLE 0x00007bd8
KEY_EPG 0x00007bd9
KEY_TV 0x00007bda
KEY_DVD 0x00007bdb
#NoGap
KEY_EXIT 0x00007bdc
KEY_OK 0x00007bdd
KEY_RIGHT 0x00007bde
KEY_LEFT 0x00007bdf
KEY_DOWN 0x00007be0
KEY_UP 0x00007be1
#NoGap
KEY_NUMERIC_STAR 0x00007be2
KEY_NUMERIC_POUND 0x00007be3
#NoGap
KEY_PREVIOUS 0x00007be4
KEY_NEXT 0x00007be5
KEY_STOP 0x00007be6
KEY_PAUSE 0x00007be7
KEY_RECORD 0x00007be8
KEY_PLAY 0x00007be9
KEY_REWIND 0x00007bea
KEY_FORWARD 0x00007beb
#NoGap
KEY_CHANNELDOWN 0x00007bec
KEY_CHANNELUP 0x00007bed
KEY_VOLUMEDOWN 0x00007bee
KEY_VOLUMEUP 0x00007bef
#NoGap
KEY_INFO 0x00007bf0
KEY_MUTE 0x00007bf1
KEY_HOME 0x00007bf2
KEY_POWER 0x00007bf3
#NoGap
KEY_ENTER 0x00007bf4
KEY_CLEAR 0x00007bf5
#NoGap
KEY_9 0x00007bf6
KEY_8 0x00007bf7
KEY_7 0x00007bf8
KEY_6 0x00007bf9
KEY_5 0x00007bfa
KEY_4 0x00007bfb
KEY_3 0x00007bfc
KEY_2 0x00007bfd
KEY_1 0x00007bfe
KEY_0 0x00007bff
end codes
end remote

View File

@ -0,0 +1,75 @@
#
# contributed by stevvie and jenkins101
#
# brand: SIIG Vista MCE remote
# model no. of remote control: older Harmony and some vista mce remotes
# devices being controlled by this remote:
#
begin remote
name vista_mce
bits 16
flags RC6
eps 30
aeps 100
header 2654 889
one 427 427
zero 427 427
pre_data_bits 21
pre_data 0x37FF0
gap 69850
min_repeat 4
# increase to suppress unwanted repeats
suppress_repeat 4
toggle_bit_mask 0x8000
rc6_mask 0x100000000
begin codes
KEY_POWER 0xEBF3 # Power
KEY_CAMERA 0x6BB6 # Pictures
KEY_RADIO 0xEBAF # Radio
KEY_VIDEO 0x6BB5 # Videos
KEY_MUSIC 0xEBB8 # Music
KEY_RECORD 0x6BE8 # Rec
KEY_PAUSE 0xEBE7 # Pause
KEY_STOP 0x6BE6 # Stop
KEY_PREVIOUS 0xEBE4 # Skipback
KEY_PLAY 0x6BE9 # Play
KEY_NEXT 0xEBE5 # Skipfwd
KEY_REWIND 0x6BEA # Rwd
KEY_FORWARD 0xEBEB # Fwd
KEY_HOME 0x6BF2 # Start
KEY_EXIT 0xEBDC # Back
KEY_INFO 0x6BF0 # More
KEY_VOLUMEUP 0xEBEF # Volup
KEY_VOLUMEDOWN 0x6BEE # Voldown
KEY_CHANNELUP 0xEBED # Chup
KEY_CHANNELDOWN 0x6BEC # Chdown
KEY_UP 0xEBE1 # Up
KEY_DOWN 0x6BE0 # Down
KEY_LEFT 0xEBDF # Left
KEY_RIGHT 0x6BDE # Right
KEY_MUTE 0xEBF1 # Mute
KEY_PVR 0x6BB7 # Rectv
KEY_TITLE 0xEBD9 # Guide
KEY_TV 0x6BDA # Livetv
KEY_MENU 0xEBDB # Dvdmenu
KEY_1 0x6BFE # 1
KEY_2 0xEBFD # 2
KEY_3 0x6BFC # 3
KEY_4 0xEBFB # 4
KEY_5 0x6BFA # 5
KEY_6 0xEBF9 # 6
KEY_7 0x6BF8 # 7
KEY_8 0xEBF7 # 8
KEY_9 0x6BF6 # 9
KEY_NUMERIC_STAR 0xEBE2 # *
KEY_0 0x6BFF # 0
KEY_NUMERIC_POUND 0xEBE3 # #
KEY_CLEAR 0x6BF5 # Clear
KEY_ENTER 0xEBF4 # Enter
end codes
end remote

View File

@ -1,65 +1,3 @@
# Please make this file available to others
# by sending it to <lirc@bartelmus.de>
#
# this config file was automatically generated
# using lirc-0.9.1-git(default) on Sat Jan 26 21:54:39 2013
#
# contributed by
#
# brand: xbox.conf
# model no. of remote control:
# devices being controlled by this remote:
#
begin remote
name xbox.conf
bits 8
eps 30
aeps 100
one 0 0
zero 0 0
gap 163983
min_repeat 4
# suppress_repeat 4
# uncomment to suppress unwanted repeats
# toggle_bit_mask 0x72
toggle_bit_mask 0x0
begin codes
KEY_OK 0x0B
KEY_PLAY 0xEA
KEY_STOP 0xE0
KEY_PAUSE 0xE6
KEY_NEXT 0xDF
KEY_PREVIOUS 0xDD
KEY_FASTFORWARD 0xE3
KEY_REWIND 0xE2
KEY_MEDIA 0xD5
KEY_EPG 0xE5
KEY_INFO 0xC3
KEY_UP 0xA6
KEY_DOWN 0xA7
KEY_LEFT 0xA9
KEY_RIGHT 0xA8
KEY_MENU 0xF7
KEY_EXIT 0xD8
KEY_0 0xCF
KEY_1 0xCE
KEY_2 0xCD
KEY_3 0xCC
KEY_4 0xCB
KEY_5 0xCA
KEY_6 0xC9
KEY_7 0xC8
KEY_8 0xC7
KEY_9 0xC6
end codes
end remote
# Please make this file available to others
# by sending it to <lirc@bartelmus.de>
#
@ -75,7 +13,7 @@ end remote
begin remote
name Xbox 360 Remote
name Xbox-360-Remote
bits 13
flags RC6|CONST_LENGTH
eps 30

View File

@ -0,0 +1,60 @@
# Please make this file available to others
# by sending it to <lirc@bartelmus.de>
#
# this config file was automatically generated
# using lirc-0.9.1-git(default) on Sat Jan 26 21:54:39 2013
#
# contributed by
#
# brand: xbox.conf
# model no. of remote control:
# devices being controlled by this remote:
#
begin remote
name XboxDVDDongle
bits 8
eps 30
aeps 100
one 0 0
zero 0 0
gap 163983
min_repeat 4
# suppress_repeat 4
# uncomment to suppress unwanted repeats
# toggle_bit_mask 0x72
toggle_bit_mask 0x0
begin codes
KEY_OK 0x0B
KEY_PLAY 0xEA
KEY_STOP 0xE0
KEY_PAUSE 0xE6
KEY_NEXT 0xDF
KEY_PREVIOUS 0xDD
KEY_FASTFORWARD 0xE3
KEY_REWIND 0xE2
KEY_MEDIA 0xD5
KEY_EPG 0xE5
KEY_INFO 0xC3
KEY_UP 0xA6
KEY_DOWN 0xA7
KEY_LEFT 0xA9
KEY_RIGHT 0xA8
KEY_MENU 0xF7
KEY_EXIT 0xD8
KEY_0 0xCF
KEY_1 0xCE
KEY_2 0xCD
KEY_3 0xCC
KEY_4 0xCB
KEY_5 0xCA
KEY_6 0xC9
KEY_7 0xC8
KEY_8 0xC7
KEY_9 0xC6
end codes
end remote

View File

@ -1,519 +0,0 @@
# /etc/lirc/lircd.conf.rpi
#
# Lirc config for lirc_rpi (GPIO) receiver.
# Enables use of MCE Remote, Apple MacMini and XBOX remote.
# Should work with any generic receiver
#
# contributed by jenkins101
#
########
#
# brand: HP/Philips/Microsoft/Other
# model no. of remote control: Media Center Edition remote
# devices being controlled by this remote: myriad of devices with Media Center Edition receivers
#
# RC-6 config file
#
# source: http://home.hccnet.nl/m.majoor/projects_remote_control.htm
# http://home.hccnet.nl/m.majoor/pronto.pdf
#
# used by: Philips
#
#########
#
# Philips Media Center Edition remote control
# For use with the USB MCE ir receiver
#
# Dan Conti dconti|acm.wwu.edu
#
# Updated with codes for MCE 2005 Remote additional buttons
# *, #, Teletext, Red, Green, Yellow & Blue Buttons
# Note: TV power button transmits no code until programmed.
# Updated 12th September 2005
# Graham Auld - mce|graham.auld.me.uk
#
# Radio, Print, RecTV are only available on the HP Media Center remote control
#
#
# Updated with codes for MCE 2007 Remote additional buttons
# Visualization, Aspect, SlideShow, Eject
# Note:
# Blue, Yellow, Green, Red, and Teletext buttons do not exist on some HP remote
begin remote
name mceusb
bits 16
flags RC6|CONST_LENGTH
eps 30
aeps 100
header 2667 889
one 444 444
zero 444 444
pre_data_bits 21
pre_data 0x37FF0
gap 105000
toggle_bit 22
rc6_mask 0x100000000
min_repeat 4
# uncomment to suppress unwanted repeats
suppress_repeat 4
begin codes
#seen on HP Pavilion dv3t remote --Tim Mann, 3 Nov 2009
KEY_VIDEO 0x00007b7f
KEY_PLAYPAUSE 0x00007b91
#unused by HP remote
KEY_BLUE 0x00007ba1
KEY_YELLOW 0x00007ba2
KEY_GREEN 0x00007ba3
KEY_RED 0x00007ba4
KEY_TEXT 0x00007ba5
#ba6 - bae unused
BA6 0x00007ba6
BA7 0x00007ba7
BA8 0x00007ba8
BA9 0x00007ba9
BAA 0x00007baa
BAB 0x00007bab
BAC 0x00007bac
BAD 0x00007bad
BAE 0x00007bae
KEY_RADIO 0x00007baf
Print 0x00007bb1
#bb2 - bb4 unused
BB2 0x00007bb2
BB3 0x00007bb3
BB4 0x00007bb4
KEY_VIDEO 0x00007bb5
KEY_CAMERA 0x00007bb6
KEY_PVR 0x00007bb7
KEY_AUDIO 0x00007bb8
KEY_TV 0x00007bb9
#bba - bbf unused
BBA 0x00007bba
BBB 0x00007bbb
BBC 0x00007bbc
BBD 0x00007bbd
BBE 0x00007bbe
BBF 0x00007bbf
#bc1 - bca unused
BC1 0x00007bc1
BC2 0x00007bc2
BC3 0x00007bc3
BC4 0x00007bc4
BC5 0x00007bc5
BC6 0x00007bc6
BC7 0x00007bc7
BC8 0x00007bc8
BC9 0x00007bc9
BCA 0x00007bca
KEY_EJECTCD 0x00007bcb
SlideShow 0x00007bcc
Visualization 0x00007bcd
#bce - bcf unused
BCE 0x00007bce
BCF 0x00007bcf
#bd1 - bd7 unused
BD1 0x00007bd1
BD2 0x00007bd2
BD3 0x00007bd3
BD4 0x00007bd4
BD5 0x00007bd5
BD6 0x00007bd6
BD7 0x00007bd7
KEY_ANGLE 0x00007bd8
KEY_EPG 0x00007bd9
KEY_TV 0x00007bda
KEY_DVD 0x00007bdb
#NoGap
KEY_EXIT 0x00007bdc
KEY_OK 0x00007bdd
KEY_RIGHT 0x00007bde
KEY_LEFT 0x00007bdf
KEY_DOWN 0x00007be0
KEY_UP 0x00007be1
#NoGap
KEY_NUMERIC_STAR 0x00007be2
KEY_NUMERIC_POUND 0x00007be3
#NoGap
KEY_PREVIOUS 0x00007be4
KEY_NEXT 0x00007be5
KEY_STOP 0x00007be6
KEY_PAUSE 0x00007be7
KEY_RECORD 0x00007be8
KEY_PLAY 0x00007be9
KEY_REWIND 0x00007bea
KEY_FORWARD 0x00007beb
#NoGap
KEY_CHANNELDOWN 0x00007bec
KEY_CHANNELUP 0x00007bed
KEY_VOLUMEDOWN 0x00007bee
KEY_VOLUMEUP 0x00007bef
#NoGap
KEY_INFO 0x00007bf0
KEY_MUTE 0x00007bf1
KEY_HOME 0x00007bf2
KEY_POWER 0x00007bf3
#NoGap
KEY_ENTER 0x00007bf4
KEY_CLEAR 0x00007bf5
#NoGap
KEY_9 0x00007bf6
KEY_8 0x00007bf7
KEY_7 0x00007bf8
KEY_6 0x00007bf9
KEY_5 0x00007bfa
KEY_4 0x00007bfb
KEY_3 0x00007bfc
KEY_2 0x00007bfd
KEY_1 0x00007bfe
KEY_0 0x00007bff
end codes
end remote
#
# contributed by stevvie and jenkins101
#
# brand: SIIG Vista MCE remote
# model no. of remote control: older Harmony and some vista mce remotes
# devices being controlled by this remote:
#
begin remote
name vista_mce
bits 16
flags RC6
eps 30
aeps 100
header 2654 889
one 427 427
zero 427 427
pre_data_bits 21
pre_data 0x37FF0
gap 69850
min_repeat 4
# increase to suppress unwanted repeats
suppress_repeat 4
toggle_bit_mask 0x8000
rc6_mask 0x100000000
begin codes
KEY_POWER 0xEBF3 # Power
KEY_CAMERA 0x6BB6 # Pictures
KEY_RADIO 0xEBAF # Radio
KEY_VIDEO 0x6BB5 # Videos
KEY_MUSIC 0xEBB8 # Music
KEY_RECORD 0x6BE8 # Rec
KEY_PAUSE 0xEBE7 # Pause
KEY_STOP 0x6BE6 # Stop
KEY_PREVIOUS 0xEBE4 # Skipback
KEY_PLAY 0x6BE9 # Play
KEY_NEXT 0xEBE5 # Skipfwd
KEY_REWIND 0x6BEA # Rwd
KEY_FORWARD 0xEBEB # Fwd
KEY_HOME 0x6BF2 # Start
KEY_EXIT 0xEBDC # Back
KEY_INFO 0x6BF0 # More
KEY_VOLUMEUP 0xEBEF # Volup
KEY_VOLUMEDOWN 0x6BEE # Voldown
KEY_CHANNELUP 0xEBED # Chup
KEY_CHANNELDOWN 0x6BEC # Chdown
KEY_UP 0xEBE1 # Up
KEY_DOWN 0x6BE0 # Down
KEY_LEFT 0xEBDF # Left
KEY_RIGHT 0x6BDE # Right
KEY_MUTE 0xEBF1 # Mute
KEY_PVR 0x6BB7 # Rectv
KEY_TITLE 0xEBD9 # Guide
KEY_TV 0x6BDA # Livetv
KEY_MENU 0xEBDB # Dvdmenu
KEY_1 0x6BFE # 1
KEY_2 0xEBFD # 2
KEY_3 0x6BFC # 3
KEY_4 0xEBFB # 4
KEY_5 0x6BFA # 5
KEY_6 0xEBF9 # 6
KEY_7 0x6BF8 # 7
KEY_8 0xEBF7 # 8
KEY_9 0x6BF6 # 9
KEY_NUMERIC_STAR 0xEBE2 # *
KEY_0 0x6BFF # 0
KEY_NUMERIC_POUND 0xEBE3 # #
KEY_CLEAR 0x6BF5 # Clear
KEY_ENTER 0xEBF4 # Enter
end codes
end remote
#
# this config file was automatically generated
# using lirc-0.8.2(macmini) on Tue Dec 11 11:35:26 2007
#
# contributed by Sebastian Schaetzel
#
# brand: Apple
# model no. of remote control: A1156
# devices being controlled by this remote: Mac mini, MacBookPro 15"
# SantaRosa (3.1), MacBook2
#
begin remote
name Apple_A1156
bits 8
eps 30
aeps 100
one 0 0
zero 0 0
pre_data_bits 24
pre_data 0x87EE81
gap 211982
toggle_bit_mask 0x0
ignore_mask 0x0000ff01
begin codes
KEY_VOLUMEUP 0x0B
KEY_VOLUMEDOWN 0x0D
KEY_REWIND 0x08
KEY_FORWARD 0x07
KEY_PLAYPAUSE 0x04
KEY_MENU 0x02
end codes
end remote
# Please make this file available to others
# by sending it to <lirc@bartelmus.de>
#
# this config file was automatically generated
# using lirc-0.9.1-git(default) on Sat Jan 26 21:54:39 2013
#
# contributed by
#
# brand: Microsoft
# model: Xbox DVD Remote
# devices being controlled by this remote: xbox
begin remote
name XboxDVDDongle
bits 8
eps 30
aeps 100
one 0 0
zero 0 0
gap 63950
min_repeat 4
suppress_repeat 4
# uncomment to suppress unwanted repeats
# toggle_bit_mask 0x72
toggle_bit_mask 0xE1
begin codes
KEY_OK 0x0B
KEY_OK 0xEA
KEY_STOP 0xE0
KEY_PAUSE 0xE6
KEY_NEXT 0xDF
KEY_PREVIOUS 0xDD
KEY_FASTFORWARD 0xE3
KEY_REWIND 0xE2
KEY_MEDIA 0xD5
KEY_EPG 0xE5
KEY_INFO 0xC3
KEY_UP 0xA6
KEY_DOWN 0xA7
KEY_LEFT 0xA9
KEY_RIGHT 0xA8
KEY_MENU 0xF7
KEY_EXIT 0xD8
KEY_0 0xCF
KEY_1 0xCE
KEY_2 0xCD
KEY_3 0xCC
KEY_4 0xCB
KEY_5 0xCA
KEY_6 0xC9
KEY_7 0xC8
KEY_8 0xC7
KEY_9 0xC6
end codes
end remote
# Please make this file available to others
# by sending it to <lirc@bartelmus.de>
#
# this config file was automatically generated
# using lirc-0.9.0-pre1(default) on Sat Feb 23 12:47:57 2013
#
# contributed by DynaMight
#
# brand: Xbox 360 remote
# model no. of remote control:
# devices being controlled by this remote:
#
begin remote
name Xbox 360 Remote
bits 13
flags RC6|CONST_LENGTH
eps 30
aeps 100
header 2685 886
one 457 433
zero 457 433
pre_data_bits 24
pre_data 0x1BFF80
gap 107197
min_repeat 4
suppress_repeat 4
# uncomment to suppress unwanted repeats
toggle_bit_mask 0x8000
rc6_mask 0x100000000
begin codes
KEY_STOP 0x0BE6
KEY_PLAY 0x0BE9
KEY_VOLUMEDOWN 0x0BEE
KEY_VOLUMEUP 0x0BEF
KEY_MUTE 0x0BF1
KEY_0 0x0BFF
KEY_1 0x0BFE
KEY_2 0x0BFD
KEY_3 0x0BFC
KEY_4 0x0BFB
KEY_5 0x0BFA
KEY_6 0x0BF9
KEY_7 0x0BF8
KEY_8 0x0BF7
KEY_9 0x0BF6
KEY_MENU 0x0BDB
KEY_YELLOW 0x0BD9
KEY_BLUE 0x0B97
KEY_GREEN 0x0B99
KEY_RED 0x0BDA
KEY_REWIND 0x0BEA
KEY_PLAYPAUSE 0x0BE9
KEY_FASTFORWARD 0x0BEB
KEY_EXIT 0x0BDC
KEY_TITLE 0x0BAE
KEY_STOP 0x0BE6
KEY_INFO 0x0BF0
KEY_UP 0x0BE1
KEY_DOWN 0x0BE0
KEY_LEFT 0x0BDF
KEY_RIGHT 0x0BDE
KEY_OK 0x0BDD
KEY_POWER 0x0BF3
KEY_PAGEUP 0x0B93
KEY_PAGEDOWN 0x0B92
KEY_ENTER 0x0BF4
KEY_RECORD 0x0BE8
KEY_CLEAR 0x0BF5
KEY_NEXTSONG 0x0BE5
KEY_PREVIOUSSONG 0x0BE4
KEY_DISPLAYTOGGLE 0x0BB0
KEY_PAUSE 0x037FF00BE7
end codes
end remote
# this config file was manually generated
# using WinLIRC 0.6.5 (LIRC 0.6.1pre3) on Wed Feb 28 11:27:58 2007
#
# contributed by Luca Cristoforetti
#
# brand: Dream Multimedia Dreambox 7025
# model: URC-39930RJ0-03
# devices being controlled by this remote:
# This is a remote with an option of a universal
# TV. Use TV CODE: 0680
#
# (press TV, hold down shift until you got
# 2 blinks, enter the code and you get 2
# flashes for confirmation)
#
begin remote
name Dream_Multimedia_URC-39930
bits 24
flags SPACE_ENC
eps 25
aeps 100
header 3488 1710
one 426 415
zero 426 1287
ptrail 426
pre_data_bits 24
pre_data 0xBFFBFE
gap 73939
min_repeat 4
suppress_repeat 4
# uncomment to suppress unwanted repeats
toggle_bit 0
begin codes
KEY_POWER 0x0000000000FF4342
KEY_1 0x0000000000FFF7F6
KEY_2 0x0000000000FF7776
KEY_3 0x0000000000FFB7B6
KEY_4 0x0000000000FF3736
KEY_5 0x0000000000FFD7D6
KEY_6 0x0000000000FF5756
KEY_7 0x0000000000FF9796
KEY_8 0x0000000000FF1716
KEY_9 0x0000000000FFE7E6
KEY_0 0x0000000000FF6766
< 0x0000000000FF5F5E
> 0x0000000000FF2322
KEY_VOLUMEUP 0x0000000000FFFBFA
KEY_VOLUMEDOWN 0x0000000000FF7B7A
KEY_MUTE 0x0000000000FFB3B2
KEY_EXIT 0x0000000000DF84A5
KEY_CHANNELUP 0x0000000000FFD3D2
KEY_CHANNELDOWN 0x0000000000FF5352
KEY_INFO 0x0000000000FF6362
KEY_UP 0x0000000000FFADAC
KEY_LEFT 0x0000000000FF8D8C
KEY_RIGHT 0x0000000000FF0D0C
KEY_DOWN 0x0000000000FF2D2C
KEY_OK 0x0000000000FF6D6C
KEY_MENU 0x0000000000FF1E1F
KEY_AUDIO 0x0000000000FF3435
KEY_VIDEO 0x0000000000FF1312
KEY_BACKSPACE 0x0000000000FFF1F0
KEY_PLAY 0x0000000000FF7170
KEY_PAUSE 0x0000000000FFB1B0
KEY_FORWARD 0x0000000000FF3130
KEY_STOP 0x00000000007F6FEE
KEY_RADIO 0x0000000000FFB5B4
KEY_TEXT 0x00000000007F3FBE
KEY_TITLE 0x00000000007FBF3E
end codes
end remote

View File

@ -17,7 +17,7 @@
################################################################################
PKG_NAME="lirc"
PKG_VERSION="0.9.4c"
PKG_VERSION="0.9.4d"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.lirc.org"
@ -33,14 +33,19 @@ PKG_AUTORECONF="yes"
PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_forkpty=no \
ac_cv_lib_util_forkpty=no \
ac_cv_prog_HAVE_PYTHON3=no \
--enable-devinput \
--localstatedir=/ \
--with-gnu-ld \
--without-x"
pre_configure_target() {
# patch lirc-make-devinput to use target kernel include
sed -e "s|/usr/include/linux/|${SYSROOT_PREFIX}/usr/include/linux/|g" \
-i $PKG_BUILD/tools/lirc-make-devinput
export HAVE_WORKING_POLL=yes
export HAVE_UINPUT=yes
if [ -e ${SYSROOT_PREFIX}/usr/include/linux/input-event-codes.h ] ; then
export DEVINPUT_HEADER=${SYSROOT_PREFIX}/usr/include/linux/input-event-codes.h
else
export DEVINPUT_HEADER=${SYSROOT_PREFIX}/usr/include/linux/input.h
fi
}
post_makeinstall_target() {
@ -50,10 +55,11 @@ post_makeinstall_target() {
rm -rf $INSTALL/etc
mkdir -p $INSTALL/etc/lirc
cp $PKG_DIR/config/lircd.conf.* $INSTALL/etc/lirc
cp -r $PKG_DIR/config/* $INSTALL/etc/lirc
mkdir -p $INSTALL/usr/lib/libreelec
cp $PKG_DIR/scripts/lircd_helper $INSTALL/usr/lib/libreelec
cp $PKG_DIR/scripts/lircd_uinput_helper $INSTALL/usr/lib/libreelec
mkdir -p $INSTALL/usr/lib/udev
cp $PKG_DIR/scripts/lircd_wakeup_enable $INSTALL/usr/lib/udev
@ -61,3 +67,9 @@ post_makeinstall_target() {
mkdir -p $INSTALL/usr/share/services
cp -P $PKG_DIR/default.d/*.conf $INSTALL/usr/share/services
}
post_install() {
enable_service lircd.socket
enable_service lircd.service
enable_service lircd-uinput.service
}

View File

@ -1,12 +0,0 @@
diff -Naur a/configure.ac b/configure.ac
--- a/configure.ac 2016-05-23 10:18:48.000000000 -0700
+++ b/configure.ac 2016-06-08 02:09:11.335251580 -0700
@@ -33,7 +33,7 @@
AC_MSG_ERROR([
xsltproc is required to build. It usually comes with libxml])
fi
-AM_CONDITIONAL(HAVE_UINPUT, test -e /dev/uinput)
+AM_CONDITIONAL(HAVE_UINPUT, true)
AC_CHECK_PROG([MAN2HTML],[man2html],[yes],[no])
AM_CONDITIONAL(HAVE_MAN2HTML, test x$MAN2HTML = xyes)
AC_CHECK_PROG([DOXYGEN],[doxygen],[yes],[no])

View File

@ -0,0 +1,135 @@
From 110aca982ca1a7d43e88a4b0c3da27c7519de860 Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Wed, 8 Feb 2017 04:49:32 +0100
Subject: [PATCH] build: Configure devinput (#264)
---
Makefile.am | 3 ++-
configure.ac | 40 +++++++++++++++++++++++++++++++++++++
doc/man-source/lirc-make-devinput.1 | 7 +++++--
lib/Makefile.am | 2 +-
4 files changed, 48 insertions(+), 4 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 868ad7f..c01b050 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -53,6 +53,7 @@ headerdir = $(includedir)/lirc
nobase_header_HEADERS = include/media/lirc.h
header_HEADERS = paths.h config.h drivers/irpipe/irpipe.h
+
install-data-hook:
$(SED) -i -e '/^plugindir/s|/usr/lib|$(libdir)|' \
$(DESTDIR)$(lirc_confdir)/lirc_options.conf
@@ -96,6 +97,6 @@ devinput.lircd.conf:
echo "# Rename to devinput.lircd.dist if not using devinput driver" > $@
echo "# Re-generate for current kernel using lirc-make-devinput" >> $@
echo '#' >> $@
- $(srcdir)/tools/lirc-make-devinput >> $@
+ $(srcdir)/tools/lirc-make-devinput $(DEVINPUT_HEADER) >> $@
.phony:
diff --git a/configure.ac b/configure.ac
index 5c83085..ddf93aa 100644
--- a/configure.ac
+++ b/configure.ac
@@ -300,6 +300,33 @@ if test "$have_alsa" = "yes"; then
else
AM_CONDITIONAL([BUILD_ALSA_SB_RC],[false])
fi
+AC_MSG_CHECKING(for devinput)
+AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+ #include <unistd.h>
+]],[[
+ int r = access("/dev/input", R_OK);
+ return r == 0 ? r : 1;
+]])],[
+ have_devinput="yes"
+ AC_MSG_RESULT(yes)
+],[
+ AC_MSG_RESULT(no)
+ have_devinput="no"
+],[
+ test -z "$DEVINPUT_HEADER" -a x$enable_devinput = x$yes && AC_MSG_ERROR([
+ Define DEVINPUT_HEADER when cross-compiling
+ ])
+ test -n "$DEVINPUT_HEADER" -a ! -e "$DEVINPUT_HEADER" && AC_MSG_ERROR([
+ Cannot access $DEVINPUT_HEADER, giving up
+ ])
+ if test -n "$DEVINPUT_HEADER" ; then
+ have_devinput="yes"
+ else
+ have_devinput="no"
+ fi
+ AC_MSG_RESULT(yes)
+])
+
dnl see https://daniel.haxx.se/blog/2016/10/11/poll-on-mac-10-12-is-broken/
AC_MSG_CHECKING(for working poll(2))
@@ -470,6 +497,18 @@ AC_ARG_ENABLE([python3_fix],
[enable_python3_fix="no"])
AM_CONDITIONAL(NEED_PYTHON3, [test "x$enable_python3_fix" = "xyes"])
+AC_ARG_ENABLE(devinput,
+ [ --enable-devinput Use /dev/input devices (default=guessed)],
+ [ enable_devinput="${enableval}" ],
+ [ enable_devinput="${have_devinput}"]
+)
+AM_CONDITIONAL([HAVE_DEVINPUT], [test x$enable_devinput = xyes])
+
+AC_ARG_VAR(DEVINPUT_HEADER,[
+ Override default value .../linux/input.h or linux/input-event-codes.h
+ e. g., when cross-compiling.
+])
+
AC_ARG_VAR(HAVE_WORKING_POLL,[
On cross-compile: Target has a working poll(2) implementation])
@@ -557,6 +596,7 @@ AC_REPORT_CONDITIONAL([NEED_PYTHON3])
AC_REPORT_CONDITIONAL([SYSTEMD_INSTALL])
AC_REPORT_CONDITIONAL([DEVEL])
AC_REPORT_CONDITIONAL([HAVE_UINPUT])
+AC_REPORT_CONDITIONAL([HAVE_DEVINPUT])
AC_REPORT_CONDITIONAL([DARWIN])
AC_REPORT_CONDITIONAL([LINUX_KERNEL])
diff --git a/doc/man-source/lirc-make-devinput.1 b/doc/man-source/lirc-make-devinput.1
index a952b30..7d0ee0c 100644
--- a/doc/man-source/lirc-make-devinput.1
+++ b/doc/man-source/lirc-make-devinput.1
@@ -1,4 +1,4 @@
-.TH LIRC_MAKE_DEVINPUT "1" "Last change: Oct 2015" "lirc-make-devinput @version@" "User Commands"
+.TH LIRC_MAKE_DEVINPUT "1" "Last change: Feb 2017" "lirc-make-devinput @version@" "User Commands"
.SH NAME
lirc-make-devinput - create a devinput.lircd.conf for the local site.
.SH SYNOPSIS
@@ -14,8 +14,11 @@ matches the local system (i. e., the local kernel). It normally requires
that the kernel-headers package is installed.
.SH FILES
.TP
-/usr/include/linux/input.h
+/usr/include/linux/input-event-codes.h
Default system header file
+.TP
+/usr/include/linux/input.h
+Alternative file used on older kernels.
.SH "SEE ALSO"
.P
diff --git a/lib/Makefile.am b/lib/Makefile.am
index 48f539e..09ad559 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -108,7 +108,7 @@ if LINUX_KERNEL
lirc/input_map.inc:
ln -s . lirc || :
$(top_srcdir)/tools/lirc-make-devinput -i > input_map.inc
- $(top_srcdir)/tools/lirc-make-devinput -i > $@
+ $(top_srcdir)/tools/lirc-make-devinput -i $(DEVINPUT_HEADER) > $@
else
lirc/input_map.inc:
touch $@
--
2.9.3

View File

@ -0,0 +1,119 @@
From 6b35f7e0db3d1da5fce27c089d0ccfb18ee4c5fa Mon Sep 17 00:00:00 2001
From: Alec Leamas <leamas.alec@gmail.com>
Date: Sun, 12 Feb 2017 10:49:07 +0100
Subject: [PATCH] Use _EVUP instead of _UP as release suffic (#263).
---
daemons/lircd-uinput.cpp | 4 ++--
doc/man-source/lircd-uinput.8 | 11 +++++++----
doc/man-source/lircd.8 | 6 +++++-
lib/lirc_config.h | 2 +-
4 files changed, 15 insertions(+), 8 deletions(-)
diff --git a/daemons/lircd-uinput.cpp b/daemons/lircd-uinput.cpp
index ff3a727..110f1de 100644
--- a/daemons/lircd-uinput.cpp
+++ b/daemons/lircd-uinput.cpp
@@ -38,7 +38,7 @@ static const char* const HELP =
"\t socket: lircd output socket or test file [" LIRCD "]\n"
"\nOptions:\n"
"\t -u --uinput=uinput \t\tuinput device [/dev/uinput]\n"
- "\t -r --release-suffix=suffix \tRelease events suffix [_UP]\n"
+ "\t -r --release-suffix=suffix \tRelease events suffix [_EVUP]\n"
"\t -R --repeat=delay[,period]\tSet kernel repeat parameters [none]\n"
"\t -a --add-release-events\tAdd synthetic release events [no]\n"
"\t -d --disable=file\t\tDisable buttons listed in file\n"
@@ -157,7 +157,7 @@ static void add_defaults(void)
LOGFILE_OPT, "syslog",
UINPUT_OPT, "/dev/uinput",
REPEAT_OPT, (const char*) NULL,
- SUFFIX_OPT, suffix ? suffix : "_UP",
+ SUFFIX_OPT, suffix ? suffix : "_EVUP",
TIMEOUT_OPT, "200",
INPUT_ARG, socket ? socket : LIRCD,
DISABLED_OPT, (const char*)NULL,
diff --git a/doc/man-source/lircd-uinput.8 b/doc/man-source/lircd-uinput.8
index 0786a6f..3409d13 100644
--- a/doc/man-source/lircd-uinput.8
+++ b/doc/man-source/lircd-uinput.8
@@ -1,4 +1,4 @@
-.TH LIRCD-UINPUT "8" "Last change: Oct 2016" "lircd.uinput @version@" "System Managers Manual"
+.TH LIRCD-UINPUT "8" "Last change: Feb 2017" "lircd.uinput @version@" "System Managers Manual"
.\" Copyright (c) 2015, Alec Leamas
.\"
@@ -93,7 +93,7 @@ The setting should usually match the
.I --release
option.
Defaults to the lircd setting, falling back to
-.I _UP
+.I _EVUP
\&. See REPEAT HANDLING
.TP
\fB\-R\fR \fB\-\-repeat\fR <\fIdelay\fR[,\fIperiod\fR] | \fI,period\fR>
@@ -171,15 +171,18 @@ using the
.I --release
option.
Such events typically has an
-.I _UP
+.I _EVUP
suffix appended to the original keypress event.
As an alternative,
.B lircd-uinput
can create release events using the
-.I --add-relesea-events
+.I --add-release-events
option.
Combining both of these options might give unexpected results.
.P
+Note that the linux kernel uses the suffix _UP (which was used py
+lircd prior to 0.10.0) for other purposes since 4.7.
+.P
In any case, the repeat events generated by the kernel can be tweaked using
the
.I --repeat
diff --git a/doc/man-source/lircd.8 b/doc/man-source/lircd.8
index 1aa036f..f992e6f 100644
--- a/doc/man-source/lircd.8
+++ b/doc/man-source/lircd.8
@@ -141,7 +141,11 @@ under DRIVER LOADING. The argument is a :-separated search path.
\fB-r, --release\fR [\fIsuffix\fR]
Enables automatic generation of release events for each button press.
lircd will append the given suffix to the button name for each release
-event. If no suffix is given the default suffix is '_UP'.
+event. If no suffix is given the default suffix is '_EVUP'.
+.IP
+Note the suffix _UP, which was used by
+.B lircd
+prior to 0.10.0, is used by the linux kernel for other purposes since 4.7.
.TP
\fB-R, --repeat-max\fR <\fIlimit\fR>
Sets an upper limit to the number of repeats when sending a signal. The
diff --git a/lib/lirc_config.h b/lib/lirc_config.h
index d57da3d..903ce3a 100644
--- a/lib/lirc_config.h
+++ b/lib/lirc_config.h
@@ -74,7 +74,7 @@
#define PIDFILE VARRUNDIR "/" PACKAGE "/" PID_LIRCD
/** Suffix added to release events. */
-#define LIRC_RELEASE_SUFFIX "_UP"
+#define LIRC_RELEASE_SUFFIX "_EVUP"
/** Default directory for plugins/drivers. */
#define PLUGINDIR LIBDIR "/lirc/plugins"
diff a/lib/lirc/lirc_config.h b/lib/lirc/lirc_config.h
--- a/lib/lirc/lirc_config.h
+++ b/lib/lirc/lirc_config.h
@@ -74,7 +74,7 @@
#define PIDFILE VARRUNDIR "/" PACKAGE "/" PID_LIRCD
/** Suffix added to release events. */
-#define LIRC_RELEASE_SUFFIX "_UP"
+#define LIRC_RELEASE_SUFFIX "_EVUP"
/** Default directory for plugins/drivers. */
#define PLUGINDIR LIBDIR "/lirc/plugins"
--
2.1.4

View File

@ -0,0 +1,32 @@
From e2fcade8acd9280873bea676cbcf2f5e43a70e2a Mon Sep 17 00:00:00 2001
From: Matthias Reichl <hiassoft@users.sf.net>
Date: Wed, 5 Apr 2017 13:40:27 +0200
Subject: [PATCH] lib: Fix bad driver initialization (#279).
---
lib/drv_admin.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/lib/drv_admin.c b/lib/drv_admin.c
index 66046ad..1c35560 100644
--- a/lib/drv_admin.c
+++ b/lib/drv_admin.c
@@ -259,6 +259,7 @@ int hw_choose_driver(const char* name)
if (name == NULL) {
memcpy(&drv, &drv_null, sizeof(struct driver));
+ drv.fd = -1;
return 0;
}
if (strcasecmp(name, "dev/input") == 0)
@@ -267,6 +268,7 @@ int hw_choose_driver(const char* name)
found = for_each_driver(match_hw_name, (void*)name, NULL);
if (found != (struct driver*)NULL) {
memcpy(&drv, found, sizeof(struct driver));
+ drv.fd = -1;
return 0;
}
return -1;
--
2.1.4

View File

@ -0,0 +1,50 @@
From ce4a46f6e7021e54f3679bfc8ea02c6f213f6d96 Mon Sep 17 00:00:00 2001
From: Matthias Reichl <hias@horus.com>
Date: Fri, 7 Apr 2017 13:47:34 +0200
Subject: [PATCH] backport Handle systemd new pkg-config filename (#274)
---
configure.ac | 2 ++
daemons/lircd.cpp | 2 ++
2 files changed, 4 insertions(+)
diff --git a/configure.ac b/configure.ac
index 5c83085..865784d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -408,6 +408,7 @@ AC_CHECK_HEADERS(linux/i2c-dev.h,[
PKG_CHECK_MODULES([SYSTEMD],[libsystemd-daemon],,[true])
+test -n "$SYSTEMD_LIBS" || PKG_CHECK_MODULES([SYSTEMD],[libsystemd],,[true])
if test -n "$SYSTEMD_LIBS"; then
CFLAGS="$CFLAGS $SYSTEMD_CFLAGS"
AC_DEFINE(HAVE_SYSTEMD)
@@ -559,6 +560,7 @@ AC_REPORT_CONDITIONAL([DEVEL])
AC_REPORT_CONDITIONAL([HAVE_UINPUT])
AC_REPORT_CONDITIONAL([DARWIN])
AC_REPORT_CONDITIONAL([LINUX_KERNEL])
+AC_REPORT_CONDITIONAL([HAVE_SYSTEMD])
echo
diff --git a/daemons/lircd.cpp b/daemons/lircd.cpp
index fd1eab5..0dffc4a 100644
--- a/daemons/lircd.cpp
+++ b/daemons/lircd.cpp
@@ -1035,10 +1035,12 @@ void start_server(mode_t permission, int nodaemon, loglevel_t loglevel)
fprintf(stderr, "Too many file descriptors received.\n");
goto start_server_failed0;
} else if (n == 1) {
+ log_notice("Using systemd fd");
sockfd = SD_LISTEN_FDS_START + 0;
}
#endif
if (sockfd == -1) {
+ log_debug("No systemd fd found");
sockfd = socket(AF_UNIX, SOCK_STREAM, 0);
if (sockfd == -1) {
perror("Could not create socket");
--
2.1.4

View File

@ -1,11 +0,0 @@
--- a/configure.ac.orig 2016-10-17 22:23:59.484494213 +0200
+++ b/configure.ac 2016-10-17 22:25:08.045520993 +0200
@@ -76,7 +76,7 @@
fi
fi
AX_PYTHON_MODULE([yaml])
-AM_CONDITIONAL([HAVE_PYMOD_YAML], test $HAVE_PYMOD_YAML = "yes")
+AM_CONDITIONAL([HAVE_PYMOD_YAML], false)
forkpty=""
AC_CHECK_FUNCS(forkpty)
if test "$ac_cv_func_forkpty" != yes; then

View File

@ -1,41 +0,0 @@
diff -Naur a/configure.ac b/configure.ac
--- a/configure.ac 2016-10-22 06:21:56.000000000 +0200
+++ b/configure.ac 2016-12-26 21:54:42.489330474 +0100
@@ -277,36 +277,7 @@
AM_CONDITIONAL([BUILD_ALSA_SB_RC],[false])
fi
-dnl see https://daniel.haxx.se/blog/2016/10/11/poll-on-mac-10-12-is-broken/
-AC_MSG_CHECKING(for working poll(2))
-AC_RUN_IFELSE([AC_LANG_PROGRAM([[
- #include <errno.h>
- #include <fcntl.h>
- #include <poll.h>
- #include <stdio.h>
- #include <sys/time.h>
-]],[[
- int fd = open("/dev/tty", O_RDONLY);
- if (fd == -1) return 2;
- struct pollfd pfd = {fd, 1, 0};
-
- struct timeval before, after;
- gettimeofday(&before, NULL);
- int rc = poll(&pfd, 1, 500);
- if (rc < 0) return errno;
- if (rc > 0) return rc;
- gettimeofday(&after, NULL);
-
- suseconds_t us = (after.tv_sec - before.tv_sec) * 1000000 +
- (after.tv_usec - before.tv_usec);
- return us >= 400000 ? 0 : 1;
-]])],[
- AC_DEFINE(HAVE_POLL_FINE)
- AC_MSG_RESULT(yes)
-],[
- AC_MSG_RESULT(no)
-])
-
+AC_DEFINE(HAVE_POLL_FINE)
dnl check for kernel-headers
AC_CHECK_HEADERS([linux/input.h],

View File

@ -0,0 +1,13 @@
diff --git a/Makefile.am b/Makefile.am
index 868ad7f..45d64e0 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -25,7 +25,7 @@ if WITH_SYSTEMDSYSTEMUNITDIR
SYSTEMD_DIR = systemd
endif
-SUBDIRS = lib daemons tools plugins configs doc $(SYSTEMD_DIR)
+SUBDIRS = lib daemons tools plugins configs $(SYSTEMD_DIR)
if INSTALL_ETC

View File

@ -1,61 +1,31 @@
#!/bin/sh
################################################################################
# This file is part of OpenELEC - http://www.openelec.tv
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
# This file is part of LibreELEC - https://libreelec.tv
# Copyright (C) 2017 Matthias Reichl (hias@horus.com)
#
# OpenELEC is free software: you can redistribute it and/or modify
# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# OpenELEC is distributed in the hope that it will be useful,
# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenELEC. If not, see <http://www.gnu.org/licenses/>.
# along with LibreELEC. If not, see <http://www.gnu.org/licenses/>.
################################################################################
DEVICE=$(echo "$1" | cut -f1 -d:)
DRIVER=$(echo "$1" | cut -f2 -d:)
CONFIG=$(echo "$1" | cut -f3 -d:)
if [ "x$DRIVER" = "x" ]; then
exit 1;
if [ -e "/storage/.config/lirc_options.conf" ] ; then
LIRCD_OPTIONS="-O /storage/.config/lirc_options.conf"
fi
mkdir -p '/run/lirc'
LIRCD="/usr/sbin/lircd"
LIRCD_UINPUT="/usr/sbin/lircd-uinput"
LIRCD_CONFIG="--driver=$DRIVER --device=/dev/$DEVICE"
LIRCD_CONFIG="$LIRCD_CONFIG --output=/run/lirc/lircd-$DEVICE"
LIRCD_CONFIG="$LIRCD_CONFIG --pidfile=/run/lirc/lircd-$DEVICE.pid"
LIRCD_CONFIG="$LIRCD_CONFIG --release=_LIRCUP"
if [ -e "/storage/.config/lircd.conf" ]; then
LIRCD_CONFIG="$LIRCD_CONFIG /storage/.config/lircd.conf"
elif [ -n "$CONFIG" ]; then
if [ -e "/storage/.config/$CONFIG" ]; then
LIRCD_CONFIG="$LIRCD_CONFIG /storage/.config/$CONFIG"
elif [ -e "/etc/lirc/$CONFIG" ]; then
LIRCD_CONFIG="$LIRCD_CONFIG /etc/lirc/$CONFIG"
else
echo "No device specific $CONFIG file found"
echo "You need to provide your own $CONFIG file"
echo "Place it in /storage/.config/$CONFIG"
exit 0
fi
if [ -e "/storage/.config/lircd.conf" ] ; then
LIRCD_CONF="/storage/.config/lircd.conf"
else
echo "No lircd.conf file found"
echo "You need to provide your own lircd.conf file"
echo "Place it in /storage/.config/lircd.conf"
exit 0
LIRCD_CONF="/etc/lirc/lircd.conf"
fi
# lircd daemonizes but lircd-uinput doesn't so we need to fork it to the background
$LIRCD $LIRCD_CONFIG
$LIRCD_UINPUT --release=_LIRCUP /run/lirc/lircd-$DEVICE &
exit 0
exec /usr/sbin/lircd $LIRCD_OPTIONS "$@" $LIRCD_CONF

View File

@ -0,0 +1,24 @@
#!/bin/sh
################################################################################
# This file is part of LibreELEC - https://libreelec.tv
# Copyright (C) 2017 Matthias Reichl (hias@horus.com)
#
# LibreELEC is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# LibreELEC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with LibreELEC. If not, see <http://www.gnu.org/licenses/>.
################################################################################
if [ -e "/storage/.config/lirc_options.conf" ] ; then
LIRCD_OPTIONS="-O /storage/.config/lirc_options.conf"
fi
exec /usr/sbin/lircd-uinput $LIRCD_OPTIONS "$@"

View File

@ -1,11 +0,0 @@
[Unit]
Description=Lirc defaults
After=local-fs.target
ConditionPathExists=!/storage/.cache/services/lircd.conf
ConditionPathExists=!/storage/.cache/services/lircd.disabled
[Service]
Type=oneshot
ExecStart=/bin/sh -c 'cp /usr/share/services/lircd.conf /storage/.cache/services/'
RemainAfterExit=yes

View File

@ -0,0 +1,12 @@
[Unit]
Documentation=http://lirc.org/html/configure.html
Description=Forward LIRC button presses as uinput events
ConditionPathExists=/storage/.cache/services/lircd.conf
After=lircd.service
[Service]
Type=simple
ExecStart=/usr/lib/libreelec/lircd_uinput_helper
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,12 @@
[Unit]
Documentation=http://lirc.org/html/configure.html
Description=Flexible IR remote input/output application support
ConditionPathExists=/storage/.cache/services/lircd.conf
After=network.target
[Service]
Type=simple
ExecStart=/usr/lib/libreelec/lircd_helper --nodaemon --release
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,6 @@
[Socket]
ListenStream=/run/lirc/lircd.socket
[Install]
WantedBy=sockets.target
Also=lircd.service

View File

@ -1,16 +0,0 @@
[Unit]
Description=Lirc with %I
After=lircd-defaults.service
Requires=lircd-defaults.service
ConditionPathExists=/storage/.cache/services/lircd.conf
[Service]
Type=forking
ExecStart=/usr/lib/libreelec/lircd_helper %I
TimeoutStopSec=1
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target

View File

@ -1,74 +0,0 @@
################################################################################
# An example udev rules file for lircd.
################################################################################
# lircd_helper only does something for "add" and "remove" actions.
ACTION!="add|remove", GOTO="end"
KERNEL=="hiddev[0-9]*", SUBSYSTEM=="usb", SUBSYSTEMS=="usb", GOTO="begin"
KERNEL=="ttyACM[0-9]*", SUBSYSTEM=="tty", SUBSYSTEMS=="usb", GOTO="begin"
KERNEL=="lirc[0-9]*", SUBSYSTEM=="lirc", SUBSYSTEMS=="i2c", GOTO="begin"
KERNEL=="lirc[0-9]*", SUBSYSTEM=="lirc", SUBSYSTEMS=="usb", GOTO="begin"
KERNEL=="lirc[0-9]*", SUBSYSTEM=="lirc", SUBSYSTEMS=="platform", GOTO="begin"
KERNEL=="lirc[0-9]*", SUBSYSTEM=="lirc", SUBSYSTEMS=="pnp", GOTO="begin"
KERNEL=="lirc[0-9]*", SUBSYSTEM=="lirc", SUBSYSTEMS=="rc", GOTO="begin"
GOTO="end"
LABEL="begin"
#-------------------------------------------------------------------------------
# Ask lircd_helper to lirc devices.
#-------------------------------------------------------------------------------
SUBSYSTEM=="lirc", \
ENV{lircd_driver}="default", \
ENV{lircd_conf}="lircd.conf"
### Microsoft Xbox DVD dongle
SUBSYSTEM=="lirc", DRIVERS=="lirc_xbox", \
ENV{lircd_driver}="default", \
ENV{lircd_conf}="lircd.conf.xbox"
### RPi GPIO IR Receiver
SUBSYSTEM=="lirc", DRIVERS=="lirc_rpi", \
ENV{lircd_driver}="default", \
ENV{lircd_conf}="lircd.conf.rpi"
### Odroid AMLogic IR Receiver
SUBSYSTEMS=="platform", DRIVERS=="meson-ir", \
ENV{lircd_driver}="default", \
ENV{lircd_conf}="lircd.conf.amremote"
#-------------------------------------------------------------------------------
# Ask lircd_helper to handle USB devices that do not show up as lirc devices
# and are supported by lircd. Remote controls that are USB HID devices that show
# up as event devices are not included as as they are handled by eventlircd.
#-------------------------------------------------------------------------------
SUBSYSTEMS=="usb", GOTO="begin-usb"
GOTO="end-usb"
LABEL="begin-usb"
ENV{ID_USB_INTERFACES}=="", IMPORT{builtin}="usb_id"
ENV{ID_VENDOR_ID}=="04d8", ENV{ID_MODEL_ID}=="fd08", \
ENV{lircd_driver}="usb_irtoy", \
ENV{lircd_conf}="lircd.conf"
ENV{ID_VENDOR_ID}=="0fe9", ENV{ID_MODEL_ID}=="9010", \
ENV{lircd_driver}="dvico", \
ENV{lircd_conf}="lircd.conf"
ENV{ID_VENDOR_ID}=="04d8", ENV{ID_MODEL_ID}=="f844", \
ENV{lircd_driver}="irman", \
ENV{lircd_conf}="lircd.conf"
LABEL="end-usb"
ENV{lircd_driver}=="?*", ENV{lircd_conf}=="?*", ACTION=="add", \
TAG+="systemd", ENV{SYSTEMD_WANTS}+="lircd@$name:$env{lircd_driver}:$env{lircd_conf}.service", \
RUN+="lircd_wakeup_enable"
ENV{lircd_driver}=="?*", ENV{lircd_conf}=="?*", ACTION=="remove", \
RUN+="/usr/bin/systemctl stop lircd@$name:$env{lircd_driver}:$env{lircd_conf}.service"
LABEL="end"