Add LudOS
20
README.md
@ -1,19 +1,15 @@
|
||||
# LibreELEC
|
||||
# LudOS
|
||||
|
||||
LibreELEC is a 'Just enough OS' Linux distribution for running the award-winning [Kodi](https://kodi.tv) software on popular mediacentre hardware. LibreELEC is a conservative fork of the popular [OpenELEC](http://openelec.tv) project with a stronger focus on pre-release testing and post-release change management. Further information on the project can be found on the [LibreELEC website](https://libreelec.tv).
|
||||
LudOS is a 'Just enough OS' Linux distribution for running [Ludo](https://ludo.libretro.com) on hardware like PC or the Raspberry Pi. LudOS is based on [LibreELEC](https://libreelec.tv) 9.0 with a few minor changes.
|
||||
|
||||
**Issues & Support**
|
||||
## Installation
|
||||
|
||||
Please report issues via the [LibreELEC forum: Bug Reports](https://forum.libreelec.tv/forum-35.html). Please ask support questions in the [LibreELEC forum: Help & Support](https://forum.libreelec.tv/forum-3.html) or ask a member of project staff in the #libreelec IRC channel on Freenode.
|
||||
To install LudOS, you can download the latest release and flash it on a bootable media like a USB drive or an SD card. Flashing can be done using `dd` or [Etcher](https://www.balena.io/etcher/). Just like you would install LibreELEC or Lakka. Installing LudOS will wipe all previous data on your disk.
|
||||
|
||||
**Donations**
|
||||
## Support
|
||||
|
||||
Contributions towards current project funding goals can be sent via PayPal to donations@libreelec.tv
|
||||
LudOS is not ready for production and contains bugs. However, you can get some help on our [Discord](https://discordapp.com/invite/YXYSEQD).
|
||||
|
||||
**License**
|
||||
## License
|
||||
|
||||
LibreELEC original code is released under [GPLv2](https://www.gnu.org/licenses/gpl-2.0.html).
|
||||
|
||||
**Copyright**
|
||||
|
||||
As LibreELEC includes code from many upstream projects it includes many copyright owners. LibreELEC makes NO claim of copyright on any upstream code. However all original LibreELEC authored code is copyright LibreELEC.tv. Patches to upstream code have the same license as the upstream project, unless specified otherwise. For a complete copyright list please checkout the source code to examine license headers. Unless expressly stated otherwise all code submitted to the LibreELEC project (in any form) is licensed under [GPLv2](https://www.gnu.org/licenses/gpl-2.0.html) and copyright is donated to LibreELEC.tv. This approach allows the project to stay manageable in the long term by giving us freedom to maintain the code as part of the whole without the management overhead of preserving contact with every submitter, e.g. GPLv3. You are absolutely free to retain copyright. To retain copyright simply add a copyright header to each submitted code page. If you submit code that is not your own work it is your responsibility to place a header stating the copyright.
|
||||
The license of LudOS is the same as the one of LibreELEC, but adds some packages like Snes9x or Genesis Plus GX that are protected by a Non-Commercial license. Thus, you can't sell LudOS or a derivative without removing these packages.
|
||||
|
12
build_all.sh
Executable file
@ -0,0 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
rm -rf target/
|
||||
|
||||
export IGNORE_VERSION=1
|
||||
export OFFICIAL=yes
|
||||
export DISTRO=LudOS
|
||||
export THREADCOUNT=8
|
||||
|
||||
PROJECT=Generic ARCH=x86_64 make image
|
||||
PROJECT=RPi DEVICE=RPi2 ARCH=arm make noobs
|
||||
PROJECT=RPi DEVICE=RPi4 ARCH=arm make noobs
|
@ -25,6 +25,10 @@ if [ "$LIBREELEC_VERSION" = "devel" ] ; then
|
||||
BUILD=$ROOT/$BUILD_BASE.$DISTRONAME-${DEVICE:-$PROJECT}.$TARGET_ARCH-$OS_VERSION-$LIBREELEC_VERSION
|
||||
fi
|
||||
|
||||
if [ "$IGNORE_VERSION" = "1" ]; then
|
||||
BUILD=$ROOT/$BUILD_BASE.$DISTRONAME-${DEVICE:-$PROJECT}.$TARGET_ARCH
|
||||
fi
|
||||
|
||||
if [ -n "$BUILD_SUFFIX" ]; then
|
||||
BUILD=$BUILD-$BUILD_SUFFIX
|
||||
fi
|
||||
|
BIN
distributions/LudOS/LudOS.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
BIN
distributions/LudOS/LudOS_40x40.png
Normal file
After Width: | Height: | Size: 703 B |
0
distributions/LudOS/addons/fanart.png
Normal file
227
distributions/LudOS/options
Normal file
@ -0,0 +1,227 @@
|
||||
# LTO (Link Time Optimization) support
|
||||
LTO_SUPPORT="yes"
|
||||
|
||||
# GOLD (Google Linker) support
|
||||
GOLD_SUPPORT="yes"
|
||||
|
||||
# HARDENING (security relevant linker and compiler flags) support
|
||||
HARDENING_SUPPORT="no"
|
||||
|
||||
# Name of the Distro to build (full name, without special characters)
|
||||
DISTRONAME="LudOS"
|
||||
|
||||
# short project description
|
||||
DESCRIPTION="LudOS is a user friendly retro gaming OS."
|
||||
|
||||
# Welcome Message for e.g. SSH Server (up to 5 Lines)
|
||||
GREETING0="##############################################"
|
||||
GREETING1="# LudOS #"
|
||||
GREETING2="# https://github.com/libretro/LudOS #"
|
||||
GREETING3="##############################################"
|
||||
GREETING4=""
|
||||
|
||||
# Root password to integrate in the target system
|
||||
ROOT_PASSWORD="ludos"
|
||||
|
||||
# Install glibc locales to the build (yes / no)
|
||||
GLIBC_LOCALES="no"
|
||||
|
||||
# Mediacenter to use (kodi / no)
|
||||
MEDIACENTER="ludo"
|
||||
|
||||
# Skins to install (Estuary)
|
||||
# Space separated list is supported,
|
||||
# e.g. SKINS="Estuary"
|
||||
SKINS="Estuary"
|
||||
|
||||
# Default Skin (Estuary)
|
||||
SKIN_DEFAULT="Estuary"
|
||||
|
||||
# Select whether to use default (upstream xbmc/xbmc) repo, or specific vendor repo
|
||||
KODI_VENDOR="default"
|
||||
|
||||
# install extra subtitle Fonts for KODI (yes / no)
|
||||
KODI_EXTRA_FONTS="no"
|
||||
|
||||
# build and install PulseAudio support (yes / no)
|
||||
PULSEAUDIO_SUPPORT="no"
|
||||
|
||||
# build and install espeak support (yes / no)
|
||||
ESPEAK_SUPPORT="no"
|
||||
|
||||
# build and install with BluRay support (yes / no)
|
||||
KODI_BLURAY_SUPPORT="no"
|
||||
|
||||
# build and install with BD+ support
|
||||
# (BD+ decryption support in KODI) (yes / no)
|
||||
BLURAY_BDPLUS_SUPPORT="no"
|
||||
|
||||
# build and install with AACS support
|
||||
# (BD decryption support in KODI) (yes / no)
|
||||
BLURAY_AACS_SUPPORT="no"
|
||||
|
||||
# build and install with DVDCSS support
|
||||
# (DVD decryption support in KODI) (yes / no)
|
||||
KODI_DVDCSS_SUPPORT="no"
|
||||
|
||||
# additional drivers to install:
|
||||
# for a list of additional drivers see packages/linux-drivers
|
||||
# Space separated list is supported,
|
||||
# e.g. ADDITIONAL_DRIVERS="DRIVER1 DRIVER2"
|
||||
ADDITIONAL_DRIVERS="RTL8192CU RTL8192DU RTL8192EU RTL8188EU RTL8812AU"
|
||||
|
||||
# build and install bluetooth support (yes / no)
|
||||
BLUETOOTH_SUPPORT="yes"
|
||||
|
||||
# build and install with KODI webfrontend (yes / no)
|
||||
KODI_WEBSERVER_SUPPORT="no"
|
||||
|
||||
# build and install Avahi (Zeroconf) daemon (yes / no)
|
||||
AVAHI_DAEMON="no"
|
||||
|
||||
# build with UPnP support (yes / no)
|
||||
KODI_UPNP_SUPPORT="no"
|
||||
|
||||
# build with MySQL support (mysql / mariadb / none)
|
||||
KODI_MYSQL_SUPPORT="none"
|
||||
|
||||
# build xbmc with optical drive support (yes / no)
|
||||
KODI_OPTICAL_SUPPORT="no"
|
||||
|
||||
# build with AirPlay support (stream videos from iDevices to KODI) (yes / no)
|
||||
KODI_AIRPLAY_SUPPORT="no"
|
||||
|
||||
# build with AirTunes support (stream music from iDevices to KODI) (yes / no)
|
||||
KODI_AIRTUNES_SUPPORT="no"
|
||||
|
||||
# build with libnfs support (mounting nfs shares with KODI) (yes / no)
|
||||
KODI_NFS_SUPPORT="no"
|
||||
|
||||
# build with Samba Client support (mounting SAMBA shares with KODI) (yes / no)
|
||||
KODI_SAMBA_SUPPORT="no"
|
||||
|
||||
# build with NFS support (mounting nfs shares via the OS) (yes / no)
|
||||
NFS_SUPPORT="no"
|
||||
|
||||
# build with Samba Client support (mounting samba shares via the OS) (yes / no)
|
||||
SAMBA_SUPPORT="no"
|
||||
|
||||
# build and install Samba Server (yes / no)
|
||||
SAMBA_SERVER="yes"
|
||||
|
||||
# build and install SFTP Server (yes / no)
|
||||
SFTP_SERVER="yes"
|
||||
|
||||
# build and install OpenVPN support (yes / no)
|
||||
OPENVPN_SUPPORT="no"
|
||||
|
||||
# build and install diskmounter support (udevil)
|
||||
# this service provide auto mounting support for external drives in the
|
||||
# mediacenter also automount internally drives at boottime via udev (yes / no)
|
||||
UDEVIL="yes"
|
||||
|
||||
# build and install exFAT fuse support (yes / no)
|
||||
EXFAT="yes"
|
||||
|
||||
# build and install NTFS-3G fuse support (yes / no)
|
||||
NTFS3G="yes"
|
||||
|
||||
# build and install hfs filesystem utilities (yes / no)
|
||||
HFSTOOLS="yes"
|
||||
|
||||
# Windowmanager to use (fluxbox / none)
|
||||
WINDOWMANAGER="none"
|
||||
|
||||
# Xorg Graphic drivers to use (all / i915,i965,r200,r300,r600,nvidia)
|
||||
# Space separated list is supported,
|
||||
# e.g. GRAPHIC_DRIVERS="i915 i965 r300 r600 radeonsi nvidia"
|
||||
GRAPHIC_DRIVERS="r300 r600 radeonsi i915 i965 nvidia nvidia-legacy vmware virtio"
|
||||
|
||||
# build and install remote support (yes / no)
|
||||
REMOTE_SUPPORT="no"
|
||||
|
||||
# build and install ATV IR remote support (yes / no)
|
||||
ATVCLIENT_SUPPORT="no"
|
||||
|
||||
# build and install Joystick support (yes / no)
|
||||
JOYSTICK_SUPPORT="no"
|
||||
|
||||
# build and install CEC adapter support (yes / no)
|
||||
CEC_SUPPORT="no"
|
||||
|
||||
# build and install CEC framework support (yes / no)
|
||||
CEC_FRAMEWORK_SUPPORT="no"
|
||||
|
||||
# build and install iSCSI support - iscsistart (yes / no)
|
||||
ISCSI_SUPPORT="no"
|
||||
|
||||
# Support for partitioning and formating disks in initramfs (yes / no)
|
||||
# This adds support for parted and mkfs.ext3/4 to initramfs for OEM usage
|
||||
INITRAMFS_PARTED_SUPPORT="no"
|
||||
|
||||
# build with swap support (yes / no)
|
||||
SWAP_SUPPORT="no"
|
||||
|
||||
# swap support enabled per default (yes / no)
|
||||
SWAP_ENABLED_DEFAULT="no"
|
||||
|
||||
# swapfile size if SWAP_SUPPORT=yes in MB
|
||||
SWAPFILESIZE="128"
|
||||
|
||||
# additional packages to install:
|
||||
# Space separated list is supported,
|
||||
# e.g. ADDITIONAL_PACKAGES="PACKAGE1 PACKAGE2"
|
||||
ADDITIONAL_PACKAGES=""
|
||||
|
||||
# build with installer (yes / no)
|
||||
INSTALLER_SUPPORT="yes"
|
||||
|
||||
# Testpackages for development (yes / no)
|
||||
TESTING="no"
|
||||
|
||||
# OEM packages for OEM's (yes / no)
|
||||
OEM_SUPPORT="no"
|
||||
|
||||
# build and install nano text editor (yes / no)
|
||||
NANO_EDITOR="yes"
|
||||
|
||||
# cron support (yes / no)
|
||||
CRON_SUPPORT="no"
|
||||
|
||||
# Distribution Specific source location
|
||||
DISTRO_MIRROR="http://sources.libreelec.tv/mirror"
|
||||
DISTRO_SRC="http://sources.libreelec.tv/$LIBREELEC_VERSION"
|
||||
|
||||
# Addon Server Url
|
||||
ADDON_SERVER_URL="https://addons.libreelec.tv"
|
||||
|
||||
# set the addon dirs
|
||||
ADDON_PATH="$ADDON_VERSION/${DEVICE:-$PROJECT}/$TARGET_ARCH"
|
||||
ADDON_URL="$ADDON_SERVER_URL/$ADDON_PATH"
|
||||
|
||||
# Default size of system partition, in MB, eg. 512
|
||||
SYSTEM_SIZE=512
|
||||
# Default system partition offset, in sectors, eg. 2048
|
||||
SYSTEM_PART_START=8192
|
||||
|
||||
# Configure debug groups (space delimited key=value pairs, with each value comma-delimited) and default group when DEBUG=yes
|
||||
# Use ! or - prefix to prevent a dependent package from being built with debug. Add + suffix to build dependenencies with debug.
|
||||
DEBUG_GROUPS="kodi+=kodi+,kodi-platform+,p8-platform+,!mesa"
|
||||
DEBUG_GROUP_YES="kodi+"
|
||||
|
||||
# Default supported get handlers (archive, git, file etc.)
|
||||
GET_HANDLER_SUPPORT="archive"
|
||||
|
||||
# Partition labels for USB/SD installation media
|
||||
DISTRO_BOOTLABEL="LUDOS"
|
||||
DISTRO_DISKLABEL="STORAGE"
|
||||
|
||||
# Settings package name - blank if not required
|
||||
DISTRO_PKG_SETTINGS=""
|
||||
|
||||
# IR remote protocols supported in default config
|
||||
IR_REMOTE_PROTOCOLS="RC6 NEC"
|
||||
|
||||
# IR remote keymaps supported in default config
|
||||
IR_REMOTE_KEYMAPS="rc6_mce xbox_360 xbox_one"
|
||||
|
BIN
distributions/LudOS/splash/boot-logo.bmp.gz
Normal file
BIN
distributions/LudOS/splash/splash-1080.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
distributions/LudOS/splash/splash-1200.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
distributions/LudOS/splash/splash-2160.png
Normal file
After Width: | Height: | Size: 49 KiB |
BIN
distributions/LudOS/splash/splash-720.png
Normal file
After Width: | Height: | Size: 10 KiB |
BIN
distributions/LudOS/splash/splash-768.png
Normal file
After Width: | Height: | Size: 9.7 KiB |
BIN
distributions/LudOS/splash/splash-900.png
Normal file
After Width: | Height: | Size: 12 KiB |
8
distributions/LudOS/version
Normal file
@ -0,0 +1,8 @@
|
||||
# VERSION: set full version, use "devel" for development version
|
||||
LIBREELEC_VERSION="1.0-beta6"
|
||||
|
||||
# OS_VERSION: OS Version
|
||||
OS_VERSION="1.0"
|
||||
|
||||
# ADDON_VERSION: Addon version
|
||||
ADDON_VERSION="1.0"
|
@ -12,6 +12,3 @@ PKG_DEPENDS_TARGET="toolchain libX11 libXfixes libXrender"
|
||||
PKG_LONGDESC="X11 Cursor management library.s"
|
||||
PKG_BUILD_FLAGS="+pic"
|
||||
|
||||
makeinstall_target() {
|
||||
:
|
||||
}
|
||||
|
@ -0,0 +1 @@
|
||||
applespi
|
46
packages/linux-drivers/applespi/package.mk
Normal file
@ -0,0 +1,46 @@
|
||||
################################################################################
|
||||
# This file is part of LibreELEC - https://libreelec.tv
|
||||
# Copyright (C) 2016-present Team LibreELEC
|
||||
#
|
||||
# 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/>.
|
||||
################################################################################
|
||||
|
||||
PKG_NAME="applespi"
|
||||
PKG_VERSION="0369050"
|
||||
PKG_ARCH="x86_64"
|
||||
PKG_LICENSE="GPLv2"
|
||||
PKG_SITE="https://github.com/roadrunner2/macbook12-spi-driver"
|
||||
PKG_URL="https://github.com/roadrunner2/macbook12-spi-driver/archive/$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain linux"
|
||||
PKG_NEED_UNPACK="$LINUX_DEPENDS"
|
||||
PKG_SECTION="driver"
|
||||
PKG_SHORTDESC="Macbook keyboard, touchpad and touchbar driver"
|
||||
PKG_LONGDESC="Macbook keyboard, touchpad and touchbar driver"
|
||||
|
||||
PKG_IS_ADDON="no"
|
||||
PKG_AUTORECONF="no"
|
||||
|
||||
pre_make_target() {
|
||||
unset LDFLAGS
|
||||
}
|
||||
|
||||
make_target() {
|
||||
make KDIR=$(kernel_path)
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
mkdir -p $INSTALL/$(get_full_module_dir)/$PKG_NAME
|
||||
cp *.ko $INSTALL/$(get_full_module_dir)/$PKG_NAME
|
||||
ls -la $INSTALL/$(get_full_module_dir)/$PKG_NAME
|
||||
}
|
@ -1,7 +1,7 @@
|
||||
[Unit]
|
||||
Description=Broadcom SDIO Firmware Symlink Service
|
||||
After=kernel-overlays.service
|
||||
Before=kodi.service
|
||||
Before=ludo.service
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
|
57
packages/mediacenter/ludo/package.mk
Normal file
@ -0,0 +1,57 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
|
||||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="ludo"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://github.com/libretro/ludo"
|
||||
PKG_DEPENDS_TARGET="toolchain openal-soft"
|
||||
PKG_LONGDESC="A libretro frontend written in golang."
|
||||
PKG_VERSION="0.16.13"
|
||||
PKG_URL="https://github.com/libretro/ludo/releases/download/v$PKG_VERSION/Ludo-Linux-$ARCH-$PKG_VERSION.tar.gz"
|
||||
PKG_SOURCE_NAME="Ludo-Linux-$ARCH-$PKG_VERSION.tar.gz"
|
||||
PKG_TOOLCHAIN="manual"
|
||||
|
||||
if [ "$DISPLAYSERVER" = "x11" ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET libX11 libXext libdrm libXrandr libXcursor"
|
||||
elif [ "$DISPLAYSERVER" = "weston" ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET wayland waylandpp"
|
||||
CFLAGS="$CFLAGS -DMESA_EGL_NO_X11_HEADERS"
|
||||
CXXFLAGS="$CXXFLAGS -DMESA_EGL_NO_X11_HEADERS"
|
||||
fi
|
||||
|
||||
if [ ! "$OPENGL" = "no" ]; then
|
||||
PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET $OPENGL"
|
||||
fi
|
||||
|
||||
makeinstall_target() {
|
||||
mkdir -p $INSTALL/usr/bin
|
||||
cp ./ludo $INSTALL/usr/bin/ludo
|
||||
mkdir -p $INSTALL/usr/share/ludo
|
||||
cp -r ./assets $INSTALL/usr/share/ludo/assets
|
||||
cp -r ./database $INSTALL/usr/share/ludo/database
|
||||
mkdir -p $INSTALL/usr/lib/libretro
|
||||
cp -r ./cores/* $INSTALL/usr/lib/libretro
|
||||
|
||||
mkdir -p $INSTALL/etc
|
||||
echo '
|
||||
video_fullscreen = true
|
||||
cores_dir = "/usr/lib/libretro"
|
||||
assets_dir = "/usr/share/ludo/assets"
|
||||
database_dir = "/usr/share/ludo/database"
|
||||
playlists_dir = "/storage/playlists"
|
||||
savefiles_dir = "/storage/savefiles"
|
||||
savestates_dir = "/storage/savestates"
|
||||
screenshots_dir = "/storage/screenshots"
|
||||
system_dir = "/storage/system"
|
||||
thumbnail_dir = "/storage/thumbnails"
|
||||
bluetooth_service = false
|
||||
samba_service = false
|
||||
ssh_service = false
|
||||
' > $INSTALL/etc/ludo.toml
|
||||
}
|
||||
|
||||
post_install() {
|
||||
enable_service ludo.target
|
||||
enable_service ludo.service
|
||||
}
|
22
packages/mediacenter/ludo/system.d/ludo.service
Normal file
@ -0,0 +1,22 @@
|
||||
[Unit]
|
||||
Description=Ludo
|
||||
After=network-online.target graphical.target
|
||||
Requires=graphical.target
|
||||
Wants=network-online.target
|
||||
|
||||
[Service]
|
||||
Environment=__GL_YIELD=USLEEP
|
||||
Environment=DISPLAY=:0.0
|
||||
Environment=WAYLAND_DISPLAY=wayland-0
|
||||
Environment=SDL_MOUSE_RELATIVE=0
|
||||
Environment=HOME=/storage
|
||||
EnvironmentFile=/etc/os-release
|
||||
ExecStart=/usr/bin/ludo -ludos
|
||||
KillMode=process
|
||||
TimeoutStopSec=5
|
||||
Restart=always
|
||||
RestartSec=2
|
||||
StartLimitInterval=0
|
||||
|
||||
[Install]
|
||||
WantedBy=ludo.target
|
10
packages/mediacenter/ludo/system.d/ludo.target
Normal file
@ -0,0 +1,10 @@
|
||||
[Unit]
|
||||
Description=Ludo
|
||||
Requires=multi-user.target graphical.target network-online.target
|
||||
After=network-online.target graphical.target
|
||||
Wants=network-online.target
|
||||
Conflicts=rescue.target
|
||||
AllowIsolate=yes
|
||||
|
||||
[Install]
|
||||
Alias=default.target
|
11
packages/mediacenter/ludo/tmpfiles.d/ludo-userdirs.conf
Normal file
@ -0,0 +1,11 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
|
||||
d /storage/.ludo 0755 root root - -
|
||||
d /storage/roms 0755 root root - -
|
||||
d /storage/savestates 0755 root root - -
|
||||
d /storage/savefiles 0755 root root - -
|
||||
d /storage/screenshots 0755 root root - -
|
||||
d /storage/system 0755 root root - -
|
||||
d /storage/playlists 0755 root root - -
|
||||
d /storage/thumbnails 0755 root root - -
|
4
packages/mediacenter/ludo/tmpfiles.d/ludo.conf
Normal file
@ -0,0 +1,4 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
|
||||
d /run/ludo 0755 root root - -
|
41
packages/mediacenter/ludo/udev.d/99-8bitdo.rules
Normal file
@ -0,0 +1,41 @@
|
||||
# 8Bitdo FC30 1P GamePad Bluetooth mode(START) mode(START+R)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo FC30 GamePad", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo FC30 2P GamePad Bluetooth mode(START)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo FC30 II", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo FC30 2P GamePad Bluetooth mode(START+R)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo FC30 II Joystick", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo SFC30 GamePad Bluetooth mode(START)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo SFC30 GamePad", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo SFC30 GamePad Bluetooth mode(START+R)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo SFC30 GamePad Joystick", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo NES30 GamePad Bluetooth mode(START)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo NES30 GamePad", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo NES30 GamePad Bluetooth mode(START+R)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo NES30 GamePad Joystick", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo SNES30 GamePad Bluetooth mode(START)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo SNES30 GamePad", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo SNES30 GamePad Bluetooth mode(START+R)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo SNES30 GamePad Joystick", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo FC30 Pro GamePad Bluetooth mode(POWER) mode(POWER+R1)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo FC30 Pro", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo NES30 Pro GamePad Bluetooth mode(POWER)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo NES30 Pro", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo NES30 Pro GamePad Bluetooth mode(POWER+R1)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo NES30 Pro Joystick", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo FC30 Arcade Joystick Bluetooth mode(HOME)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo Joy", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
||||
|
||||
# 8Bitdo Zero GamePad Bluetooth mode(START) mode(START+R)
|
||||
SUBSYSTEM=="input", ATTRS{name}=="8Bitdo Zero GamePad", MODE="0666", ENV{ID_INPUT_JOYSTICK}="1"
|
@ -78,6 +78,8 @@ post_makeinstall_target() {
|
||||
-e "s|^# AllowHostnameUpdates.*|AllowHostnameUpdates = false|g" \
|
||||
-e "s|^# PersistentTetheringMode.*|PersistentTetheringMode = true|g" \
|
||||
-e "s|^# NetworkInterfaceBlacklist = vmnet,vboxnet,virbr,ifb|NetworkInterfaceBlacklist = vmnet,vboxnet,virbr,ifb,docker,veth,zt|g"
|
||||
echo "TimeUpdates=manual" >> $INSTALL/etc/connman/main.conf
|
||||
echo "TimezoneUpdates=manual" >> $INSTALL/etc/connman/main.conf
|
||||
|
||||
mkdir -p $INSTALL/usr/share/connman/
|
||||
cp $PKG_DIR/config/settings $INSTALL/usr/share/connman/
|
||||
|
@ -8,7 +8,7 @@
|
||||
# available from your machine
|
||||
|
||||
[global]
|
||||
server string = LibreELEC
|
||||
server string = LudOS
|
||||
browseable = yes
|
||||
writeable = yes
|
||||
printable = no
|
||||
@ -58,77 +58,29 @@
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/.update
|
||||
|
||||
[Videos]
|
||||
path = /storage/videos
|
||||
[ROMs]
|
||||
path = /storage/roms
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/videos
|
||||
root preexec = mkdir -p /storage/roms
|
||||
|
||||
[Music]
|
||||
path = /storage/music
|
||||
[Savestates]
|
||||
path = /storage/savestates
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/music
|
||||
root preexec = mkdir -p /storage/savestates
|
||||
|
||||
[TV Shows]
|
||||
path = /storage/tvshows
|
||||
[Savefiles]
|
||||
path = /storage/savefiles
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/tvshows
|
||||
|
||||
[Recordings]
|
||||
path = /storage/recordings
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/recordings
|
||||
|
||||
[Downloads]
|
||||
path = /storage/downloads
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/downloads
|
||||
|
||||
[Pictures]
|
||||
path = /storage/pictures
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/pictures
|
||||
|
||||
[Emulators]
|
||||
path = /storage/emulators
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/emulators
|
||||
|
||||
[Configfiles]
|
||||
path = /storage/.config
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/.config
|
||||
|
||||
[Userdata]
|
||||
path = /storage/.kodi/userdata
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/.kodi/userdata
|
||||
root preexec = mkdir -p /storage/savefiles
|
||||
|
||||
[Screenshots]
|
||||
path = /storage/screenshots
|
||||
@ -138,27 +90,27 @@
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/screenshots
|
||||
|
||||
[Logfiles]
|
||||
path = /storage/logfiles
|
||||
[System]
|
||||
path = /storage/system
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/logfiles
|
||||
root preexec = createlog
|
||||
root preexec = mkdir -p /storage/system
|
||||
|
||||
[Backup]
|
||||
path = /storage/backup
|
||||
[Playlists]
|
||||
path = /storage/playlists
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/backup
|
||||
root preexec = mkdir -p /storage/playlists
|
||||
|
||||
[Picons]
|
||||
path = /storage/picons
|
||||
[Thumbnails]
|
||||
path = /storage/thumbnails
|
||||
available = yes
|
||||
browseable = yes
|
||||
public = yes
|
||||
writeable = yes
|
||||
root preexec = mkdir -p /storage/picons/tvh /storage/picons/vdr
|
||||
root preexec = mkdir -p /storage/thumbnails
|
||||
|
||||
|
@ -4,7 +4,6 @@
|
||||
|
||||
PKG_NAME="libgpg-error"
|
||||
PKG_VERSION="1.37"
|
||||
PKG_SHA256="b32d6ff72a73cf79797f7f2d039e95e9c6f92f0c1450215410840ab62aea9763"
|
||||
PKG_LICENSE="GPLv2"
|
||||
PKG_SITE="https://www.gnupg.org"
|
||||
PKG_URL="https://www.gnupg.org/ftp/gcrypt/libgpg-error/$PKG_NAME-$PKG_VERSION.tar.bz2"
|
||||
|
@ -185,7 +185,7 @@ post_install() {
|
||||
add_group nogroup 65534
|
||||
|
||||
enable_service shell.service
|
||||
enable_service show-version.service
|
||||
#enable_service show-version.service
|
||||
enable_service var.mount
|
||||
enable_service fs-resize.service
|
||||
listcontains "${FIRMWARE}" "rpi-eeprom" && enable_service rpi-flash-firmware.service
|
||||
|
@ -8,7 +8,7 @@ PKG_SHA256="ec22be9a5dd94c9640e6348ed8391d1499af8ca2c2f01109198a414cff6c6cba"
|
||||
PKG_LICENSE="LGPL2.1+"
|
||||
PKG_SITE="http://www.freedesktop.org/wiki/Software/systemd"
|
||||
PKG_URL="https://github.com/systemd/systemd/archive/v$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain libcap kmod util-linux entropy libidn2 wait-time-sync"
|
||||
PKG_DEPENDS_TARGET="toolchain libcap kmod util-linux libidn2 wait-time-sync"
|
||||
PKG_LONGDESC="A system and session manager for Linux, compatible with SysV and LSB init scripts."
|
||||
|
||||
PKG_MESON_OPTS_TARGET="--libdir=/usr/lib \
|
||||
|
@ -101,7 +101,7 @@ allowed_groups = *
|
||||
# be permitted to unmount its associated loop device even though internal.
|
||||
# INCLUDING /MNT HERE IS NOT RECOMMENDED. ALL ALLOWED MEDIA DIRECTORIES
|
||||
# SHOULD BE OWNED AND WRITABLE ONLY BY ROOT.
|
||||
allowed_media_dirs = /media, /var/media, /run/media/$USER
|
||||
allowed_media_dirs = /storage
|
||||
|
||||
|
||||
# allowed_devices is the first criteria for what block devices users may mount
|
||||
|
@ -2,3 +2,8 @@
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
# WARNING: DO NOT EDIT THIS FILE - IT WILL BE OVERWRITTEN WHEN UPGRADING!
|
||||
|
||||
disable_splash=1
|
||||
disable_overscan=1
|
||||
dtparam=audio=on
|
||||
dtoverlay=vc4-fkms-v3d
|
||||
|
@ -11,4 +11,4 @@ PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/$PKG_NAME-$PKG_VERSI
|
||||
PKG_DEPENDS_TARGET="toolchain util-macros libXext"
|
||||
PKG_LONGDESC="libXinerama is the Xinerama library."
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared --enable-malloc0returnsnull"
|
||||
PKG_CONFIGURE_OPTS_TARGET="--enable-static --enable-shared --enable-malloc0returnsnull"
|
||||
|
@ -2,7 +2,7 @@
|
||||
Description=Fluxbox Window Manager
|
||||
Requires=xorg.service
|
||||
After=xorg.service
|
||||
Before=kodi.service
|
||||
Before=ludo.service
|
||||
|
||||
[Service]
|
||||
Environment=DISPLAY=:0
|
||||
|
@ -1,6 +1,6 @@
|
||||
[Unit]
|
||||
Description=Xorg Server
|
||||
Before=graphical.target kodi.service
|
||||
Before=graphical.target ludo.service
|
||||
After=multi-user.target
|
||||
ConditionKernelCommandLine=!installer
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
|
||||
DRIVER=="vc4-drm", ENV{xorg_driver}="modesetting", TAG+="systemd", ENV{SYSTEMD_WANTS}+="xorg-configure@modesetting.service"
|
||||
ACTION!="add|change", GOTO="end_video"
|
||||
|
||||
# xorg_start only does something for subsystem "pci" and "video" class.
|
||||
|
@ -2662,7 +2662,10 @@ CONFIG_I2C_DESIGNWARE_BAYTRAIL=y
|
||||
# CONFIG_I2C_DEBUG_ALGO is not set
|
||||
# CONFIG_I2C_DEBUG_BUS is not set
|
||||
# CONFIG_I3C is not set
|
||||
# CONFIG_SPI is not set
|
||||
CONFIG_SPI=y
|
||||
CONFIG_SPI_MASTER=y
|
||||
CONFIG_SPI_PXA2XX=m
|
||||
|
||||
# CONFIG_SPMI is not set
|
||||
# CONFIG_HSI is not set
|
||||
CONFIG_PPS=y
|
||||
|
@ -74,13 +74,13 @@
|
||||
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
|
||||
# Space separated list is supported,
|
||||
# e.g. FIRMWARE="dvb-firmware misc-firmware wlan-firmware"
|
||||
FIRMWARE="misc-firmware wlan-firmware dvb-firmware iwlwifi-firmware"
|
||||
FIRMWARE="misc-firmware wlan-firmware iwlwifi-firmware"
|
||||
|
||||
# additional drivers to install:
|
||||
# for a list of additional drivers see packages/linux-drivers
|
||||
# Space separated list is supported,
|
||||
# e.g. ADDITIONAL_DRIVERS="DRIVER1 DRIVER2"
|
||||
ADDITIONAL_DRIVERS="$ADDITIONAL_DRIVERS bcm_sta intel_nuc_led"
|
||||
ADDITIONAL_DRIVERS="$ADDITIONAL_DRIVERS bcm_sta intel_nuc_led applespi"
|
||||
|
||||
# build and install driver addons (yes / no)
|
||||
DRIVER_ADDONS_SUPPORT="yes"
|
||||
@ -88,7 +88,8 @@
|
||||
# driver addons to install:
|
||||
# for a list of additional drivers see packages/linux-driver-addons
|
||||
# Space separated list is supported,
|
||||
DRIVER_ADDONS="crazycat digital_devices dvb-latest"
|
||||
DRIVER_ADDONS=""
|
||||
|
||||
# Default size of the ova image, in MB, eg. 4096
|
||||
OVA_SIZE="4096"
|
||||
|
||||
|
@ -3,4 +3,5 @@
|
||||
|
||||
# WARNING: DO NOT EDIT THIS FILE - IT WILL BE OVERWRITTEN WHEN UPGRADING!
|
||||
dtoverlay=vc4-fkms-v3d
|
||||
dtparam=audio=on
|
||||
disable_overscan=1
|
||||
|
@ -74,16 +74,16 @@
|
||||
ALSA_SUPPORT="yes"
|
||||
|
||||
# OpenGL(X) implementation to use (no / mesa)
|
||||
OPENGL="no"
|
||||
OPENGL="mesa"
|
||||
|
||||
# OpenGL-ES implementation to use (no / bcm2835-driver / mesa)
|
||||
OPENGLES="bcm2835-driver"
|
||||
OPENGLES="no"
|
||||
|
||||
# include uvesafb support (yes / no)
|
||||
UVESAFB_SUPPORT="no"
|
||||
|
||||
# Displayserver to use (x11 / no)
|
||||
DISPLAYSERVER="no"
|
||||
DISPLAYSERVER="x11"
|
||||
|
||||
# Windowmanager to use (fluxbox / none)
|
||||
WINDOWMANAGER="none"
|
||||
@ -91,7 +91,7 @@
|
||||
# Xorg Graphic drivers to use (all / vc4 / none)
|
||||
# Space separated list is supported,
|
||||
# e.g. GRAPHIC_DRIVERS="vc4"
|
||||
GRAPHIC_DRIVERS=""
|
||||
GRAPHIC_DRIVERS="vc4"
|
||||
|
||||
# Use a vendor specific KODI repo
|
||||
KODI_VENDOR="raspberrypi"
|
||||
@ -105,7 +105,7 @@
|
||||
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
|
||||
# Space separated list is supported,
|
||||
# e.g. FIRMWARE="dvb-firmware misc-firmware wlan-firmware"
|
||||
FIRMWARE="misc-firmware wlan-firmware dvb-firmware brcmfmac_sdio-firmware-rpi"
|
||||
FIRMWARE="misc-firmware wlan-firmware brcmfmac_sdio-firmware-rpi"
|
||||
|
||||
# build with installer (yes / no)
|
||||
INSTALLER_SUPPORT="no"
|
||||
@ -129,7 +129,7 @@
|
||||
# driver addons to install:
|
||||
# for a list of additional drivers see packages/linux-driver-addons
|
||||
# Space separated list is supported,
|
||||
DRIVER_ADDONS="crazycat dvb-latest"
|
||||
DRIVER_ADDONS=""
|
||||
|
||||
# debug tty path
|
||||
DEBUG_TTY="/dev/console"
|
||||
|
@ -123,7 +123,7 @@ SAY installer: permanently install ${DISTRO} to HDD/SSD
|
||||
SAY live: boot ${DISTRO} using RAM for temporary storage
|
||||
SAY run: boot ${DISTRO} using this USB memory device for storage
|
||||
SAY
|
||||
DEFAULT installer
|
||||
DEFAULT run
|
||||
TIMEOUT 50
|
||||
PROMPT 1
|
||||
|
||||
@ -142,7 +142,7 @@ EOF
|
||||
|
||||
cat << EOF > "${LE_TMP}/grub.cfg"
|
||||
set timeout="25"
|
||||
set default="Installer"
|
||||
set default="Run"
|
||||
menuentry "Installer" {
|
||||
search --set -f /KERNEL
|
||||
linux /KERNEL boot=UUID=${UUID_SYSTEM} installer quiet systemd.debug_shell vga=current
|
||||
|