Skip to content

Commit

Permalink
Add LudOS
Browse files Browse the repository at this point in the history
  • Loading branch information
kivutar committed Dec 30, 2020
1 parent e024d21 commit b6aedb2
Show file tree
Hide file tree
Showing 41 changed files with 504 additions and 104 deletions.
20 changes: 8 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -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 changes: 12 additions & 0 deletions build_all.sh
Original file line number Diff line number Diff line change
@@ -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
4 changes: 4 additions & 0 deletions config/path
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
Binary file added distributions/LudOS/LudOS.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added distributions/LudOS/LudOS_40x40.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
227 changes: 227 additions & 0 deletions distributions/LudOS/options
Original file line number Diff line number Diff line change
@@ -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"

Binary file added distributions/LudOS/splash/boot-logo.bmp.gz
Binary file not shown.
Binary file added distributions/LudOS/splash/splash-1080.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added distributions/LudOS/splash/splash-1200.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added distributions/LudOS/splash/splash-2160.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added distributions/LudOS/splash/splash-720.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added distributions/LudOS/splash/splash-768.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added distributions/LudOS/splash/splash-900.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions distributions/LudOS/version
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# VERSION: set full version, use "devel" for development version
LIBREELEC_VERSION="1.0-alpha35"

# OS_VERSION: OS Version
OS_VERSION="1.0"

# ADDON_VERSION: Addon version
ADDON_VERSION="1.0"
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,3 @@ PKG_DEPENDS_TARGET="toolchain libX11 libXfixes libXrender"
PKG_LONGDESC="X11 Cursor management library.s"
PKG_BUILD_FLAGS="+pic"

makeinstall_target() {
:
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
applespi
46 changes: 46 additions & 0 deletions packages/linux-drivers/applespi/package.mk
Original file line number Diff line number Diff line change
@@ -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
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[Unit]
Description=Broadcom SDIO Firmware Symlink Service
After=kernel-overlays.service
Before=kodi.service
Before=ludo.service

[Service]
Type=oneshot
Expand Down
Loading

0 comments on commit b6aedb2

Please sign in to comment.