commit
be369d08f4
91 changed files with 9392 additions and 402 deletions
6
Makefile
6
Makefile
|
@ -23,10 +23,12 @@ distclean:
|
|||
src-pkg:
|
||||
tar cvJf sources.tar.xz sources .stamps
|
||||
|
||||
world: RG552 RG503 RG353P RG351P RG351V RG351MP
|
||||
world: RG552 RG503 RG353P RG351P RG351V RG351MP handheld
|
||||
|
||||
handheld:
|
||||
BASE_ONLY=true PROJECT=PC DEVICE=handheld ARCH=x86_64 ./scripts/build_distro
|
||||
X86_64:
|
||||
PROJECT=PC DEVICE=X86_64 ARCH=x86_64 ./scripts/build_distro
|
||||
BASE_ONLY=true PROJECT=PC DEVICE=X86_64 ARCH=x86_64 ./scripts/build_distro
|
||||
|
||||
RG552:
|
||||
PROJECT=Rockchip DEVICE=RG552 ARCH=arm ./scripts/build_distro
|
||||
|
|
|
@ -27,7 +27,7 @@ DISTRO="${DISTRO:-JELOS}"
|
|||
PROJECT="${PROJECT:-Rockchip}"
|
||||
|
||||
# determines TARGET_ARCH, if not forced by user
|
||||
ARCH="${ARCH:-arm}"
|
||||
ARCH="${ARCH:-aarch64}"
|
||||
TARGET_ARCH="${ARCH}"
|
||||
|
||||
# include helper functions
|
||||
|
|
|
@ -119,7 +119,7 @@
|
|||
OEM_SUPPORT="no"
|
||||
|
||||
# build and install nano text editor (yes / no)
|
||||
NANO_EDITOR="yes"
|
||||
NANO_EDITOR="no"
|
||||
|
||||
# cron support (yes / no)
|
||||
CRON_SUPPORT="yes"
|
||||
|
|
|
@ -3,15 +3,21 @@
|
|||
|
||||
PKG_NAME="libunwind"
|
||||
PKG_VERSION="1.6.2"
|
||||
PKG_SHA256="4a6aec666991fb45d0889c44aede8ad6eb108071c3554fcdff671f9c94794976"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.nongnu.org/libunwind/"
|
||||
PKG_URL="http://download.savannah.nongnu.org/releases/libunwind/libunwind-${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="gcc:host"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib"
|
||||
PKG_LONGDESC="library to determine the call-chain of a program"
|
||||
PKG_BUILD_FLAGS="+pic"
|
||||
PKG_TOOLCHAIN="autotools"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="--enable-static \
|
||||
--disable-shared"
|
||||
--disable-shared \
|
||||
--disable-minidebuginfo \
|
||||
--disable-documentation \
|
||||
--disable-tests"
|
||||
|
||||
makeinstall_target() {
|
||||
make DESTDIR=$SYSROOT_PREFIX install
|
||||
make DESTDIR=${SYSROOT_PREFIX} install
|
||||
}
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
From f40db1e2562934fd21485ba7f62e4521945f17e4 Mon Sep 17 00:00:00 2001
|
||||
From: MilhouseVH <milhouseVH.github@nmacleod.com>
|
||||
Date: Mon, 17 Feb 2020 05:52:10 +0000
|
||||
Subject: [PATCH] fix multiple definition
|
||||
|
||||
https://lists.nongnu.org/archive/html/libunwind-devel/2017-08/msg00039.html
|
||||
https://github.com/libunwind/libunwind/commit/0e74e583ae18d6852835f327921ee130a5fa3e6f
|
||||
---
|
||||
include/tdep-arm/ex_tables.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/include/tdep-arm/ex_tables.h b/include/tdep-arm/ex_tables.h
|
||||
index 9df5e0a..0b5388a 100644
|
||||
--- a/include/tdep-arm/ex_tables.h
|
||||
+++ b/include/tdep-arm/ex_tables.h
|
||||
@@ -47,6 +47,7 @@ struct arm_exbuf_data
|
||||
#define arm_exidx_extract UNW_OBJ(arm_exidx_extract)
|
||||
#define arm_exidx_decode UNW_OBJ(arm_exidx_decode)
|
||||
#define arm_exidx_apply_cmd UNW_OBJ(arm_exidx_apply_cmd)
|
||||
+#define arm_search_unwind_table UNW_OBJ(arm_search_unwind_table)
|
||||
|
||||
int arm_exidx_extract (struct dwarf_cursor *c, uint8_t *buf);
|
||||
int arm_exidx_decode (const uint8_t *buf, uint8_t len, struct dwarf_cursor *c);
|
||||
--
|
||||
2.7.4
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
--- a/src/unwind/libunwind.pc.in 2020-11-10 16:14:18.000000000 +0000
|
||||
+++ b/src/unwind/libunwind.pc.in 2021-12-05 08:16:04.467881118 +0000
|
||||
@@ -6,6 +6,6 @@
|
||||
Name: libunwind
|
||||
Description: libunwind base library
|
||||
Version: @VERSION@
|
||||
-Libs: -L${libdir} -lunwind
|
||||
+Libs: -L${libdir} -lunwind @LIBLZMA@ @LIBZ@
|
||||
Libs.private: @LIBLZMA@ @LIBZ@
|
||||
Cflags: -I${includedir}
|
11
packages/devel/asn1c/package.mk
Normal file
11
packages/devel/asn1c/package.mk
Normal file
|
@ -0,0 +1,11 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2022-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="asn1c"
|
||||
PKG_VERSION="0.9.28"
|
||||
PKG_SHA256="8007440b647ef2dd9fb73d931c33ac11764e6afb2437dbe638bb4e5fc82386b9"
|
||||
PKG_LICENSE="BSD"
|
||||
PKG_SITE="http://lionet.info/asn1c/blog/"
|
||||
PKG_URL="https://github.com/vlm/asn1c/releases/download/v${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_HOST="ccache:host"
|
||||
PKG_LONGDESC="The ASN.1 Compiler"
|
|
@ -3,12 +3,12 @@
|
|||
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="heimdal"
|
||||
PKG_VERSION="7.7.0"
|
||||
PKG_SHA256="f7d414d0914abb0e151a276b4de22cf4977fd6c28bd9ecdd990407b1138a945c"
|
||||
PKG_VERSION="c0bc8beb07d9733d4c8c17d120916552fe172f50"
|
||||
PKG_SHA256="601e9a772063c72b391d593df8ae5e05ec779fefdf1502b7d88fbbe016ceb4dd"
|
||||
PKG_LICENSE="BSD-3c"
|
||||
PKG_SITE="http://www.h5l.org/"
|
||||
PKG_URL="https://github.com/heimdal/heimdal/archive/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_HOST="toolchain:host Python3:host ncurses:host"
|
||||
PKG_URL="https://github.com/heimdal/heimdal/archive/${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_HOST="toolchain:host Python3:host ncurses:host asn1c:host"
|
||||
PKG_LONGDESC="Kerberos 5, PKIX, CMS, GSS-API, SPNEGO, NTLM, Digest-MD5 and, SASL implementation."
|
||||
PKG_TOOLCHAIN="autotools"
|
||||
PKG_BUILD_FLAGS="-parallel"
|
||||
|
|
|
@ -1,52 +0,0 @@
|
|||
From 872222db35384f343a8a566a56a28c4eb73d38ed Mon Sep 17 00:00:00 2001
|
||||
From: Damir Franusic <df@release14.org>
|
||||
Date: Sun, 9 Dec 2018 19:50:47 +0100
|
||||
Subject: [PATCH] AC_FIND_FUNC_NO_LIBS should check libtinfo for tgetent
|
||||
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
lib/libedit/config.h.in | 3 +++
|
||||
lib/libedit/configure.ac | 3 ++-
|
||||
3 files changed, 6 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index f1e8d7b15e..f98a3c555e 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -456,7 +456,7 @@ AC_FIND_FUNC_NO_LIBS(openpty, util,[
|
||||
#endif
|
||||
],[0,0,0,0,0])
|
||||
|
||||
-AC_FIND_FUNC_NO_LIBS(tgetent, termcap ncurses curses,[
|
||||
+AC_FIND_FUNC_NO_LIBS(tgetent, termcap ncurses curses tinfo,[
|
||||
#ifdef HAVE_TERMCAP_H
|
||||
#include <termcap.h>
|
||||
#endif
|
||||
diff --git a/lib/libedit/config.h.in b/lib/libedit/config.h.in
|
||||
index ba283cc39f..059e5abc6a 100644
|
||||
--- a/lib/libedit/config.h.in
|
||||
+++ b/lib/libedit/config.h.in
|
||||
@@ -42,6 +42,9 @@
|
||||
/* Define to 1 if you have the `ncurses' library (-lncurses). */
|
||||
#undef HAVE_LIBNCURSES
|
||||
|
||||
+/* Define to 1 if you have the `tinfo' library (-ltinfo). */
|
||||
+#undef HAVE_LIBTINFO
|
||||
+
|
||||
/* Define to 1 if you have the <limits.h> header file. */
|
||||
#undef HAVE_LIMITS_H
|
||||
|
||||
diff --git a/lib/libedit/configure.ac b/lib/libedit/configure.ac
|
||||
index 90c8ca57d7..89a9376b06 100644
|
||||
--- a/lib/libedit/configure.ac
|
||||
+++ b/lib/libedit/configure.ac
|
||||
@@ -36,7 +36,8 @@ EL_MANTYPE
|
||||
|
||||
AC_CHECK_LIB(curses, tgetent,,
|
||||
[AC_CHECK_LIB(ncurses, tgetent,,
|
||||
- [AC_MSG_ERROR([libcurses or libncurses are required!])] )] )
|
||||
+ [AC_CHECK_LIB(tinfo, tgetent,,
|
||||
+ [AC_MSG_ERROR([libcurses or libncurses are required!])] )] )] )
|
||||
|
||||
|
||||
# Checks for header files.
|
|
@ -1,24 +0,0 @@
|
|||
From 5e7bc8d8811fa401fa14adb9787504c0b460c7df Mon Sep 17 00:00:00 2001
|
||||
From: Earl Chew <earl_chew@yahoo.com>
|
||||
Date: Wed, 20 May 2020 09:46:28 -0700
|
||||
Subject: [PATCH] [libedit/configure.ac] Refactor tgetent message to reflect
|
||||
libraries searched
|
||||
|
||||
Signed-off-by: Earl Chew <earl_chew@yahoo.com>
|
||||
---
|
||||
lib/libedit/configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/libedit/configure.ac b/lib/libedit/configure.ac
|
||||
index 89a9376b06..b94bafc6b9 100644
|
||||
--- a/lib/libedit/configure.ac
|
||||
+++ b/lib/libedit/configure.ac
|
||||
@@ -37,7 +37,7 @@ EL_MANTYPE
|
||||
AC_CHECK_LIB(curses, tgetent,,
|
||||
[AC_CHECK_LIB(ncurses, tgetent,,
|
||||
[AC_CHECK_LIB(tinfo, tgetent,,
|
||||
- [AC_MSG_ERROR([libcurses or libncurses are required!])] )] )] )
|
||||
+ [AC_MSG_ERROR([libcurses, libncurses, or tinfo are required!])] )] )] )
|
||||
|
||||
|
||||
# Checks for header files.
|
|
@ -1,29 +0,0 @@
|
|||
From 22352b90e78e2d162b98b5ef6c84672c397be40a Mon Sep 17 00:00:00 2001
|
||||
From: Lars Wendler <polynomial-c@gentoo.org>
|
||||
Date: Wed, 17 Mar 2021 17:49:18 +0100
|
||||
Subject: [PATCH] autoconf-2.70 fix
|
||||
|
||||
autoconf-2.70 and newer are more strict with quoting etc. and thus generate
|
||||
a broken configure file:
|
||||
|
||||
configure: 20855: Syntax error: ")" unexpected (expecting "fi")
|
||||
|
||||
Gentoo-bug: https://bugs.gentoo.org/776241
|
||||
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
|
||||
---
|
||||
cf/check-var.m4 | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/cf/check-var.m4 b/cf/check-var.m4
|
||||
index 2fd7bca6f0..71d6f70ca8 100644
|
||||
--- a/cf/check-var.m4
|
||||
+++ b/cf/check-var.m4
|
||||
@@ -20,7 +20,7 @@ AC_MSG_RESULT($ac_foo)
|
||||
if test "$ac_foo" = yes; then
|
||||
AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_[]$1), 1,
|
||||
[Define if you have the `]$1[' variable.])
|
||||
- m4_ifval([$2], AC_CHECK_DECLS([$1],[],[],[$2]))
|
||||
+ m4_ifval([$2], [AC_CHECK_DECLS([$1],[],[],[$2])])
|
||||
fi
|
||||
])
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
From c4cff6859d183a40fb35a76e2bc1ce084b3a6d67 Mon Sep 17 00:00:00 2001
|
||||
From: Luke Howard <lukeh@padl.com>
|
||||
Date: Mon, 24 Dec 2018 02:21:32 +0000
|
||||
Subject: [PATCH] hx509: fix dependency, hxtool requires ASN.1 headers
|
||||
|
||||
---
|
||||
lib/hx509/Makefile.am | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/hx509/Makefile.am b/lib/hx509/Makefile.am
|
||||
index c7ef53182d..b21d85202c 100644
|
||||
--- a/lib/hx509/Makefile.am
|
||||
+++ b/lib/hx509/Makefile.am
|
||||
@@ -164,7 +164,7 @@ hxtool-commands.c hxtool-commands.h: hxtool-commands.in $(SLC)
|
||||
dist_hxtool_SOURCES = hxtool.c
|
||||
nodist_hxtool_SOURCES = hxtool-commands.c hxtool-commands.h
|
||||
|
||||
-$(hxtool_OBJECTS): hxtool-commands.h hx509_err.h
|
||||
+$(hxtool_OBJECTS): hxtool-commands.h $(nodist_include_HEADERS)
|
||||
|
||||
hxtool_LDADD = \
|
||||
libhx509.la \
|
|
@ -1,22 +0,0 @@
|
|||
From cc6a3f337bac0411d0bb1c924fd857603a258d2f Mon Sep 17 00:00:00 2001
|
||||
From: Nicolas Williams <nico@twosigma.com>
|
||||
Date: Tue, 17 Mar 2020 19:46:37 -0500
|
||||
Subject: [PATCH] hcrypto: Fix Makefile build race
|
||||
|
||||
---
|
||||
lib/hcrypto/Makefile.am | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/hcrypto/Makefile.am b/lib/hcrypto/Makefile.am
|
||||
index 195117d174..3c6ee3ca84 100644
|
||||
--- a/lib/hcrypto/Makefile.am
|
||||
+++ b/lib/hcrypto/Makefile.am
|
||||
@@ -298,7 +298,7 @@ ltmsources = \
|
||||
libtommath/bn_mp_to_unsigned_bin_n.c
|
||||
|
||||
|
||||
-$(libhcrypto_la_OBJECTS): hcrypto-link
|
||||
+$(libhcrypto_la_OBJECTS) $(test_rand_OBJECTS): hcrypto-link
|
||||
|
||||
libhcrypto_la_CPPFLAGS = -DBUILD_HCRYPTO_LIB $(AM_CPPFLAGS)
|
||||
|
|
@ -1,83 +0,0 @@
|
|||
From 79b8337d54b2d85f73eff2d033ca592447ac5fce Mon Sep 17 00:00:00 2001
|
||||
From: heitbaum <rudi@heitbaum.com>
|
||||
Date: Fri, 10 Sep 2021 00:28:16 +1000
|
||||
Subject: [PATCH] yyerror: update to POSIX standard
|
||||
|
||||
To comply with the latest POSIX standard, in Yacc compatibility mode
|
||||
(options `-y`/`--yacc`) Bison now generates prototypes for yyerror and
|
||||
yylex. In some situations, this is breaking compatibility: if the user
|
||||
has already declared these functions but with some differences (e.g., to
|
||||
declare them as static, or to use specific attributes), the generated
|
||||
parser will fail to compile. To disable these prototypes, #define yyerror
|
||||
(to `yyerror`), and likewise for yylex.
|
||||
|
||||
refer: https://git.savannah.gnu.org/cgit/bison.git/tree/NEWS
|
||||
|
||||
GNU Bison 3.8
|
||||
---
|
||||
lib/asn1/asn1parse.y | 1 +
|
||||
lib/com_err/parse.y | 5 +++--
|
||||
lib/sl/slc-lex.l | 2 +-
|
||||
lib/sl/slc.h | 3 ++-
|
||||
4 files changed, 7 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/lib/asn1/asn1parse.y b/lib/asn1/asn1parse.y
|
||||
index 9d8b76f582..91b163a28b 100644
|
||||
--- a/lib/asn1/asn1parse.y
|
||||
+++ b/lib/asn1/asn1parse.y
|
||||
@@ -65,6 +65,7 @@ static void validate_object_set(IOSObjectSet *);
|
||||
static struct constraint_spec *new_constraint_spec(enum ctype);
|
||||
static Type *new_tag(int tagclass, int tagvalue, int tagenv, Type *oldtype);
|
||||
void yyerror (const char *);
|
||||
+#define yyerror yyerror
|
||||
static struct objid *new_objid(const char *label, int value);
|
||||
static void add_oid_to_tail(struct objid *, struct objid *);
|
||||
static void fix_labels(Symbol *s);
|
||||
diff --git a/lib/com_err/parse.y b/lib/com_err/parse.y
|
||||
index 0c2e5084b5..bcb9b05204 100644
|
||||
--- a/lib/com_err/parse.y
|
||||
+++ b/lib/com_err/parse.y
|
||||
@@ -35,7 +35,8 @@
|
||||
#include "compile_et.h"
|
||||
#include "lex.h"
|
||||
|
||||
-void yyerror (char *s);
|
||||
+void yyerror (const char *s);
|
||||
+#define yyerror yyerror
|
||||
static long name2number(const char *str);
|
||||
|
||||
extern char *yytext;
|
||||
@@ -168,7 +169,7 @@ name2number(const char *str)
|
||||
}
|
||||
|
||||
void
|
||||
-yyerror (char *s)
|
||||
+yyerror (const char *s)
|
||||
{
|
||||
_lex_error_message ("%s\n", s);
|
||||
}
|
||||
diff --git a/lib/sl/slc-lex.l b/lib/sl/slc-lex.l
|
||||
index 50965bccd7..3a37302336 100644
|
||||
--- a/lib/sl/slc-lex.l
|
||||
+++ b/lib/sl/slc-lex.l
|
||||
@@ -78,7 +78,7 @@ error_message (const char *format, ...)
|
||||
}
|
||||
|
||||
void
|
||||
-yyerror (char *s)
|
||||
+yyerror (const char *s)
|
||||
{
|
||||
error_message("%s\n", s);
|
||||
}
|
||||
diff --git a/lib/sl/slc.h b/lib/sl/slc.h
|
||||
index 6e45ed2f15..e4dc2cba6b 100644
|
||||
--- a/lib/sl/slc.h
|
||||
+++ b/lib/sl/slc.h
|
||||
@@ -51,5 +51,6 @@ extern char *filename;
|
||||
extern int error_flag;
|
||||
void error_message (const char *format, ...);
|
||||
int yylex(void);
|
||||
-void yyerror (char *s);
|
||||
+void yyerror (const char *s);
|
||||
+#define yyerror yyerror
|
||||
extern unsigned lineno;
|
|
@ -3,22 +3,16 @@
|
|||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="ncurses"
|
||||
PKG_VERSION="6.1-20181215"
|
||||
PKG_SHA256="08b07c3e792961f300829512c283d5fefc0b1c421a57b76922c3d13303ed677d"
|
||||
PKG_VERSION="6.3"
|
||||
PKG_LICENSE="MIT"
|
||||
PKG_SITE="http://www.gnu.org/software/ncurses/"
|
||||
PKG_URL="http://invisible-mirror.net/archives/ncurses/current/ncurses-${PKG_VERSION}.tgz"
|
||||
PKG_URL="http://invisible-mirror.net/archives/ncurses/ncurses-${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_HOST="ccache:host"
|
||||
PKG_DEPENDS_TARGET="toolchain zlib ncurses:host"
|
||||
PKG_LONGDESC="A library is a free software emulation of curses in System V Release 4.0, and more."
|
||||
# causes some segmentation fault's (dialog) when compiled with gcc's link time optimization.
|
||||
PKG_BUILD_FLAGS="+pic"
|
||||
PKG_BUILD_FLAGS="+pic +pic:host"
|
||||
PKG_TOOLCHAIN="auto"
|
||||
|
||||
pre_configure_target() {
|
||||
export CFLAGS="${CFLAGS} -fcommon -fPIC"
|
||||
}
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="
|
||||
--without-ada \
|
||||
--without-cxx \
|
||||
|
@ -53,23 +47,39 @@ PKG_CONFIGURE_OPTS_TARGET="
|
|||
--disable-sigwinch \
|
||||
--enable-pc-files \
|
||||
--with-pkg-config-libdir=/usr/lib/pkgconfig \
|
||||
--disable-tcap-names \
|
||||
--enable-tcap-names \
|
||||
--without-develop \
|
||||
--disable-hard-tabs \
|
||||
--disable-xmc-glitch \
|
||||
--disable-hashmap \
|
||||
--disable-safe-sprintf \
|
||||
--disable-scroll-hints \
|
||||
--disable-widec \
|
||||
--enable-widec \
|
||||
--disable-echo \
|
||||
--disable-warnings \
|
||||
--disable-home-terminfo \
|
||||
--enable-home-terminfo \
|
||||
--enable-lib-suffixes \
|
||||
--disable-assertions"
|
||||
|
||||
PKG_CONFIGURE_OPTS_HOST="--enable-termcap \
|
||||
--with-termlib \
|
||||
--without-shared \
|
||||
--enable-pc-files \
|
||||
--without-tests \
|
||||
--without-manpages"
|
||||
|
||||
post_makeinstall_target() {
|
||||
#cp -rf ${INSTALL}/usr/lib/* ${TOOLCHAIN}/${TARGET_ARCH}-libreelec-linux-gnu${TARGET_ABI}/lib
|
||||
local f
|
||||
cp misc/ncurses-config ${TOOLCHAIN}/bin
|
||||
chmod +x ${TOOLCHAIN}/bin/ncurses-config
|
||||
sed -e "s:\(['=\" ]\)/usr:\\1${SYSROOT_PREFIX}/usr:g" -i ${TOOLCHAIN}/bin/ncurses-config
|
||||
#rm -rf ${INSTALL}/usr/bin
|
||||
sed -e "s:\(['=\" ]\)/usr:\\1${PKG_ORIG_SYSROOT_PREFIX}/usr:g" -i ${TOOLCHAIN}/bin/ncurses-config
|
||||
rm -f ${TOOLCHAIN}/bin/ncurses6-config
|
||||
rm -rf ${INSTALL}/usr/bin
|
||||
# create links to be compatible with any ncurses include path and lib names
|
||||
ln -sf . ${SYSROOT_PREFIX}/usr/include/ncursesw
|
||||
ln -sf . ${SYSROOT_PREFIX}/usr/include/ncurses
|
||||
for f in form menu ncurses panel tinfo; do
|
||||
ln -sf lib${f}w.a ${SYSROOT_PREFIX}/usr/lib/lib${f}.a
|
||||
ln -sf ${f}w.pc ${SYSROOT_PREFIX}/usr/lib/pkgconfig/${f}.pc
|
||||
done
|
||||
}
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
|
||||
Remove recent xterm terminfo features to be compatible with other emulations
|
||||
|
||||
--- a/misc/terminfo.src 2018-12-21 18:53:11.000000000 +0100
|
||||
+++ a/misc/terminfo.src 2018-12-22 22:56:47.000000000 +0100
|
||||
@@ -4335,8 +4335,8 @@ xterm-xfree86|xterm terminal emulator (X
|
||||
xterm-new|modern xterm terminal emulator,
|
||||
--- a/misc/terminfo.src 2021-03-20 22:45:39.000000000 +0100
|
||||
+++ b/misc/terminfo.src 2021-06-01 23:53:10.335516419 +0200
|
||||
@@ -4808,8 +4808,8 @@ xterm-xfree86|xterm terminal emulator (X
|
||||
xterm+nofkeys|building block for xterm fkey-variants,
|
||||
npc,
|
||||
indn=\E[%p1%dS, kb2=\EOE, kcbt=\E[Z, kent=\EOM,
|
||||
- rin=\E[%p1%dT, use=ansi+rep, use=ecma+strikeout,
|
||||
- use=xterm+sm+1006, use=xterm+pcfkeys, use=xterm+tmux,
|
||||
+ rin=\E[%p1%dT, use=ecma+strikeout,
|
||||
+ use=xterm+sm+1005, use=xterm+pcfkeys, use=xterm+tmux,
|
||||
use=xterm-basic,
|
||||
kcbt=\E[Z, kent=\EOM, nel=\EE, use=ecma+index,
|
||||
- use=ansi+rep, use=ecma+strikeout, use=vt420+lrmm,
|
||||
- use=xterm+sm+1006, use=xterm+tmux, use=ecma+italics,
|
||||
+ use=ecma+strikeout, use=vt420+lrmm,
|
||||
+ use=xterm+sm+1005, use=xterm+tmux, use=ecma+italics,
|
||||
use=xterm+keypad, use=xterm-basic,
|
||||
|
||||
# This fragment is for people who cannot agree on what the backspace key
|
||||
# This version reflects the current xterm features.
|
||||
|
|
|
@ -1,19 +1,8 @@
|
|||
Fix freeing not allocated fallback entries by allocating a copy.
|
||||
|
||||
--- a/ncurses/tinfo/lib_setup.c 2018-11-24 23:13:16.000000000 +0100
|
||||
+++ b/ncurses/tinfo/lib_setup.c 2018-12-29 10:31:01.000000000 +0100
|
||||
@@ -756,6 +756,8 @@ TINFO_SETUP_TERM(TERMINAL **tp,
|
||||
if (status != TGETENT_YES) {
|
||||
const TERMTYPE2 *fallback = _nc_fallback2(tname);
|
||||
|
||||
+ if (fallback)
|
||||
+ fallback = _nc_copy_entry(fallback);
|
||||
if (fallback) {
|
||||
T(("found fallback entry"));
|
||||
TerminalType(termp) = *fallback;
|
||||
--- a/ncurses/tinfo/tinfo_driver.c 2018-11-24 23:17:03.000000000 +0100
|
||||
+++ b/ncurses/tinfo/tinfo_driver.c 2018-12-29 10:27:19.000000000 +0100
|
||||
@@ -172,6 +172,8 @@ drv_CanHandle(TERMINAL_CONTROL_BLOCK * T
|
||||
@@ -180,6 +180,8 @@ drv_CanHandle(TERMINAL_CONTROL_BLOCK * T
|
||||
if (status != TGETENT_YES) {
|
||||
const TERMTYPE2 *fallback = _nc_fallback2(tname);
|
||||
|
||||
|
|
18
packages/devel/ncurses/patches/ncurses-003-fix_hints.patch
Normal file
18
packages/devel/ncurses/patches/ncurses-003-fix_hints.patch
Normal file
|
@ -0,0 +1,18 @@
|
|||
Fix USE_SCROLL_HINTS/USE_HASHMAP logic
|
||||
|
||||
--- a/ncurses/curses.priv.h 2018-12-16 02:16:58.000000000 +0100
|
||||
+++ a/ncurses/curses.priv.h 2021-05-30 00:12:14.086528124 +0200
|
||||
@@ -258,10 +258,9 @@ extern NCURSES_EXPORT(void *) _nc_memmov
|
||||
/*
|
||||
* Scroll hints are useless when hashmap is used
|
||||
*/
|
||||
-#if !USE_SCROLL_HINTS
|
||||
-#if !USE_HASHMAP
|
||||
-#define USE_SCROLL_HINTS 1
|
||||
-#else
|
||||
+#if USE_SCROLL_HINTS
|
||||
+#if USE_HASHMAP
|
||||
+#undef USE_SCROLL_HINTS
|
||||
#define USE_SCROLL_HINTS 0
|
||||
#endif
|
||||
#endif
|
|
@ -3,20 +3,21 @@
|
|||
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="readline"
|
||||
PKG_VERSION="8.0"
|
||||
PKG_SHA256="e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461"
|
||||
PKG_VERSION="8.1.2"
|
||||
PKG_SHA256="7589a2381a8419e68654a47623ce7dfcb756815c8fee726b98f90bf668af7bc6"
|
||||
PKG_LICENSE="MIT"
|
||||
PKG_SITE="http://www.gnu.org/software/readline/"
|
||||
PKG_URL="http://ftpmirror.gnu.org/readline/$PKG_NAME-$PKG_VERSION.tar.gz"
|
||||
PKG_URL="http://ftpmirror.gnu.org/readline/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain ncurses"
|
||||
PKG_LONGDESC="The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are typed in."
|
||||
PKG_BUILD_FLAGS="+pic"
|
||||
|
||||
PKG_CONFIGURE_OPTS_TARGET="bash_cv_wcwidth_broken=no \
|
||||
--disable-shared \
|
||||
--enable-static \
|
||||
--enable-shared \
|
||||
--disable-static \
|
||||
--with-curses"
|
||||
|
||||
post_makeinstall_target() {
|
||||
rm -rf $INSTALL/usr/share/readline
|
||||
sed -i 's/-lreadline/-lreadline -lncursesw/' ${SYSROOT_PREFIX}/usr/lib/pkgconfig/readline.pc
|
||||
rm -rf ${INSTALL}/usr/share/readline
|
||||
}
|
||||
|
|
|
@ -32,7 +32,7 @@ if [ "${OPENGLES_SUPPORT}" = yes ]; then
|
|||
-DUSING_X11_VULKAN=OFF"
|
||||
fi
|
||||
|
||||
if [ "${ARCH}" = "x86_64" ]
|
||||
if [ "${VULKAN_SUPPORT}" = "yes" ]
|
||||
then
|
||||
PKG_DEPENDS_TARGET+=" vulkan-loader vulkan-headers"
|
||||
PKG_CMAKE_OPTS_TARGET+=" -DUSE_VULKAN_DISPLAY_KHR=ON \
|
||||
|
|
|
@ -22,7 +22,7 @@ if [ "${OPENGLES_SUPPORT}" = yes ]; then
|
|||
PKG_CMAKE_OPTS_TARGET+=" -DUSE_GLES=ON"
|
||||
fi
|
||||
|
||||
if [ "${ARCH}" = "x86_64" ]
|
||||
if [ "${VULKAN_SUPPORT}" = "yes" ]
|
||||
then
|
||||
PKG_DEPENDS_TARGET+=" vulkan-loader vulkan-headers"
|
||||
PKG_CMAKE_OPTS_TARGET+=" -DUSE_VULKAN=ON"
|
||||
|
|
|
@ -9,7 +9,7 @@ PKG_ARCH="any"
|
|||
PKG_LICENSE="GPL3"
|
||||
PKG_SITE="https://github.com/DirtBagXon/hypseus-singe"
|
||||
PKG_URL="${PKG_SITE}.git"
|
||||
PKG_DEPENDS_TARGET="toolchain SDL2 SDL2_ttf SDL2_image libogg libvorbis"
|
||||
PKG_DEPENDS_TARGET="toolchain SDL2 SDL2_ttf SDL2_image libmpeg2 libogg libvorbis"
|
||||
PKG_LONGDESC="Hypseus is a fork of Daphne. A program that lets one play the original versions of many laserdisc arcade games on one's PC."
|
||||
PKG_TOOLCHAIN="cmake"
|
||||
GET_HANDLER_SUPPORT="git"
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
X86_64
|
|
@ -3,9 +3,9 @@
|
|||
# Copyright (C) 2022-present Fewtarius
|
||||
|
||||
PKG_NAME="raze"
|
||||
PKG_VERSION="1c0c41e88d5521fbdf5cd5ae1eb2f7de073036ab"
|
||||
PKG_VERSION="fdb13ff"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://github.com/coelckers/Raze"
|
||||
PKG_SITE="https://github.com/zdoom/Raze"
|
||||
PKG_URL="${PKG_SITE}.git"
|
||||
PKG_DEPENDS_TARGET="toolchain SDL2 raze:host zmusic libvpx"
|
||||
PKG_SHORTDESC="Raze is a fork of Build engine games backed by GZDoom tech and combines Duke Nukem 3D, Blood, Redneck Rampage, Shadow Warrior and Exhumed/Powerslave in a single package."
|
||||
|
|
1
packages/games/emulators/retroarch/gamepads/device/handheld
Symbolic link
1
packages/games/emulators/retroarch/gamepads/device/handheld
Symbolic link
|
@ -0,0 +1 @@
|
|||
X86_64
|
|
@ -31,18 +31,35 @@ pre_configure_target() {
|
|||
|
||||
case ${ARCH} in
|
||||
arm)
|
||||
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
|
||||
PKG_CONFIGURE_OPTS_TARGET+=" --enable-neon --enable-opengles --enable-opengles3 --enable-opengles3_2 --enable-kms --disable-mali_fbdev"
|
||||
PKG_CONFIGURE_OPTS_TARGET+=" --enable-neon"
|
||||
;;
|
||||
aarch64)
|
||||
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
|
||||
PKG_CONFIGURE_OPTS_TARGET+=" --disable-neon --enable-opengles --enable-opengles3 --enable-opengles3_2 --enable-kms --disable-mali_fbdev"
|
||||
PKG_CONFIGURE_OPTS_TARGET+=" --disable-neon"
|
||||
;;
|
||||
*)
|
||||
PKG_DEPENDS_TARGET+=" ${OPENGL} glu libglvnd vulkan-loader vulkan-headers"
|
||||
PKG_CONFIGURE_OPTS_TARGET+=" --enable-opengl --enable-vulkan --enable-vulkan_display"
|
||||
esac
|
||||
|
||||
if [ "${DISPLAYSERVER}" = "wl" ]; then
|
||||
PKG_DEPENDS_TARGET+=" ${DISPLAYSERVER} ${WINDOWMANAGER}"
|
||||
PKG_CONFIGURE_OPTS_TARGET+=" --enable-wayland"
|
||||
fi
|
||||
|
||||
if [ ! "${OPENGL}" = "no" ]; then
|
||||
PKG_DEPENDS_TARGET+=" ${OPENGL} glu"
|
||||
PKG_CONFIGURE_OPTS_TARGET+=" --enable-opengl"
|
||||
fi
|
||||
|
||||
if [ "${OPENGLES_SUPPORT}" = yes ]; then
|
||||
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
|
||||
PKG_CONFIGURE_OPTS_TARGET+=" --enable-opengles --enable-opengles3 --enable-opengles3_2 --enable-kms --disable-mali_fbdev"
|
||||
fi
|
||||
|
||||
if [ "${VULKAN_SUPPORT}" = "yes" ]
|
||||
then
|
||||
PKG_DEPENDS_TARGET+=" vulkan-loader vulkan-headers"
|
||||
PKG_CONFIGURE_OPTS_TARGET+=" --enable-vulkan --enable-vulkan_display"
|
||||
fi
|
||||
|
||||
case ${DEVICE} in
|
||||
RG351P|RG552)
|
||||
PKG_DEPENDS_TARGET+=" librga libgo2"
|
||||
|
|
|
@ -20,7 +20,7 @@ if [ "${OPENGLES_SUPPORT}" = yes ]; then
|
|||
-DUSE_GLES=ON"
|
||||
fi
|
||||
|
||||
if [ "${ARCH}" = "x86_64" ]
|
||||
if [ "${VULKAN_SUPPORT}" = "yes" ]
|
||||
then
|
||||
PKG_DEPENDS_TARGET+=" vulkan-loader vulkan-headers"
|
||||
PKG_CMAKE_OPTS_TARGET+=" -DUSE_VULKAN=ON"
|
||||
|
|
|
@ -7,15 +7,33 @@ PKG_ARCH="any"
|
|||
PKG_LICENSE="GPLv3"
|
||||
PKG_SITE="https://github.com/moonlight-stream/moonlight-embedded"
|
||||
PKG_URL="$PKG_SITE.git"
|
||||
PKG_DEPENDS_TARGET="toolchain opus libevdev alsa enet avahi"
|
||||
PKG_DEPENDS_TARGET="toolchain opus SDL2 libevdev alsa curl enet avahi"
|
||||
PKG_SHORTDESC="Moonlight Embedded is an open source implementation of NVIDIA's GameStream, as used by the NVIDIA Shield, but built for Linux."
|
||||
PKG_TOOLCHAIN="cmake"
|
||||
GET_HANDLER_SUPPORT="git"
|
||||
PKG_PATCH_DIRS+="${DEVICE}"
|
||||
|
||||
if [ "${PROJECT}" = "Rockchip" ]
|
||||
then
|
||||
PKG_DEPENDS_TARGET+=" rkmpp"
|
||||
fi
|
||||
|
||||
if [ ! "${OPENGL}" = "no" ]; then
|
||||
PKG_DEPENDS_TARGET+=" ${OPENGL} glu"
|
||||
fi
|
||||
|
||||
if [ "${OPENGLES_SUPPORT}" = yes ]; then
|
||||
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
|
||||
fi
|
||||
|
||||
if [ "${VULKAN_SUPPORT}" = "yes" ]
|
||||
then
|
||||
PKG_DEPENDS_TARGET+=" vulkan-loader vulkan-headers"
|
||||
fi
|
||||
|
||||
post_makeinstall_target() {
|
||||
mkdir -p $INSTALL/usr/config/moonlight
|
||||
cp -R $PKG_BUILD/moonlight.conf $INSTALL/usr/config/moonlight
|
||||
mkdir -p ${INSTALL}/usr/config/moonlight
|
||||
cp -R ${PKG_BUILD}/moonlight.conf ${INSTALL}/usr/config/moonlight
|
||||
|
||||
rm ${INSTALL}/usr/etc/moonlight.conf
|
||||
rm ${INSTALL}/usr/share/moonlight/gamecontrollerdb.txt
|
||||
|
|
|
@ -14,19 +14,24 @@ PKG_DEPENDS_HOST="toolchain:host distutilscross:host"
|
|||
PKG_PATCH_DIRS+="${DEVICE}"
|
||||
|
||||
if [ ! "${OPENGL}" = "no" ]; then
|
||||
PKG_DEPENDS_TARGET+=" ${OPENGL} glu vulkan-loader vulkan-headers"
|
||||
PKG_CMAKE_OPTS_TARGET+=" -DVIDEO_VULKAN=ON \
|
||||
-DVIDEO_OPENGL=ON \
|
||||
PKG_DEPENDS_TARGET+=" ${OPENGL} glu"
|
||||
PKG_CMAKE_OPTS_TARGET+=" -DVIDEO_OPENGL=ON \
|
||||
-DVIDEO_X11=OFF"
|
||||
fi
|
||||
|
||||
if [ "${OPENGLES_SUPPORT}" = yes ]; then
|
||||
if [ "${OPENGLES_SUPPORT}" = "yes" ]; then
|
||||
PKG_DEPENDS_TARGET+=" ${OPENGLES}"
|
||||
PKG_CMAKE_OPTS_TARGET+="-DVIDEO_OPENGLES=ON \
|
||||
-DVIDEO_VULKAN=OFF \
|
||||
-DVIDEO_X11=OFF"
|
||||
fi
|
||||
|
||||
if [ "${VULKAN_SUPPORT}" = "yes" ]; then
|
||||
PKG_DEPENDS_TARGET+=" vulkan-loader vulkan-headers"
|
||||
PKG_CMAKE_OPTS_TARGET+=" -DVIDEO_VULKAN=ON \
|
||||
-DVIDEO_X11=OFF"
|
||||
fi
|
||||
|
||||
if [ "${DISPLAYSERVER}" = "wl" ]
|
||||
then
|
||||
PKG_DEPENDS_TARGET+=" vulkan-loader vulkan-headers wayland ${WINDOWMANAGER}"
|
||||
|
|
|
@ -24,7 +24,7 @@ fi
|
|||
|
||||
PKG_BASEOS="plymouth-lite grep wget libjpeg-turbo util-linux xmlstarlet bluetool gnupg gzip patchelf \
|
||||
imagemagick terminus-font vim bash pyudev dialog six git dbus-python coreutils miniupnpc \
|
||||
nss-mdns avahi alsa-ucm-conf MC fbgrab modules"
|
||||
nss-mdns avahi alsa-ucm-conf MC fbgrab modules system-utils"
|
||||
|
||||
PKG_UI="emulationstation es-themes"
|
||||
|
||||
|
@ -41,7 +41,6 @@ PKG_EXPERIMENTAL=""
|
|||
### Project specific variables
|
||||
case "${PROJECT}" in
|
||||
Rockchip)
|
||||
PKG_BASEOS+=" system-utils"
|
||||
PKG_EMUS+=" retropie-shaders"
|
||||
PKG_COMPAT+=" lib32"
|
||||
;;
|
||||
|
@ -50,14 +49,6 @@ case "${PROJECT}" in
|
|||
;;
|
||||
esac
|
||||
|
||||
### Device specific variables
|
||||
case "${DEVICE}" in
|
||||
RG552|RG503|RG353P|RG351P|RG351V|RG351MP|X86_64)
|
||||
PKG_SOFTWARE+=" emulators gamesupport"
|
||||
PKG_TOOLS+=" 351files"
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ ! -z "${BASE_ONLY}" ]
|
||||
then
|
||||
PKG_DEPENDS_TARGET+=" ${PKG_BASEOS} ${PKG_TOOLS} ${PKG_UI}"
|
||||
|
|
20
packages/jelos/sources/asound/handheld/asound.conf
Normal file
20
packages/jelos/sources/asound/handheld/asound.conf
Normal file
|
@ -0,0 +1,20 @@
|
|||
pcm.!default {
|
||||
type plug
|
||||
slave.pcm "dmixer"
|
||||
}
|
||||
|
||||
pcm.dmixer {
|
||||
type dmix
|
||||
ipc_key 1024
|
||||
slave {
|
||||
pcm "hw:2,0"
|
||||
period_time 0
|
||||
period_size 1024
|
||||
buffer_size 4096
|
||||
rate 44100
|
||||
}
|
||||
bindings {
|
||||
0 0
|
||||
1 1
|
||||
}
|
||||
}
|
|
@ -8,7 +8,7 @@ for dir in /tmp/shaders
|
|||
do
|
||||
if [ -d "${dir}" ]
|
||||
then
|
||||
find ${dir} -name '*.glslp' -print0 |
|
||||
find ${dir} -name '*.glsl*' -print0 |
|
||||
while IFS= read -r -d '' line; do
|
||||
echo ${line#${dir}/},
|
||||
done
|
||||
|
|
|
@ -95,6 +95,10 @@ EOF
|
|||
rm -f "${WIFICFG}" 2>/dev/null
|
||||
set_setting wifi.enabled 0
|
||||
;;
|
||||
"reconnect")
|
||||
/usr/bin/wifictl disable
|
||||
/usr/bin/wifictl enable
|
||||
;;
|
||||
"list")
|
||||
#connmanctl services | cut -b 5- | awk '/wifi/ {sub(/\s+wifi_.*$/,"",$0);print}' | sort | uniq
|
||||
list_wifi | awk '{sub(/\S+=/,"",$0);print}'
|
||||
|
|
|
@ -1,15 +1 @@
|
|||
ath10k/*
|
||||
ctefx.bin
|
||||
lbtf_usb.bin
|
||||
mrvl/sd8897_uapsta.bin
|
||||
qca/*00000302.bin
|
||||
rt2561.bin
|
||||
rt2561s.bin
|
||||
rt2661.bin
|
||||
rt2860.bin
|
||||
rt3290.bin
|
||||
ar3k/*.dfu
|
||||
intel/dsp_fw_{bxtn,cnl,glk,kbl,release}.bin
|
||||
intel/fw_sst_*.bin*
|
||||
intel/ibt-*.{ddc,sfi,bseq}
|
||||
intel/IntcSST2.bin
|
||||
*
|
||||
|
|
|
@ -2,8 +2,7 @@
|
|||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="kernel-firmware"
|
||||
PKG_VERSION="20220509"
|
||||
PKG_SHA256="376e0b3d7b4f8aaa2abf7f5ab74803dcf14b06b94e3d841b1467cd9a2848255e"
|
||||
PKG_VERSION="20220815"
|
||||
PKG_LICENSE="other"
|
||||
PKG_SITE="https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/"
|
||||
PKG_URL="https://cdn.kernel.org/pub/linux/kernel/firmware/linux-firmware-${PKG_VERSION}.tar.xz"
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
PKG_NAME="linux"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_VERSION="5.18.10"
|
||||
PKG_VERSION="5.19.4"
|
||||
PKG_URL="https://www.kernel.org/pub/linux/kernel/v5.x/${PKG_NAME}-${PKG_VERSION}.tar.xz"
|
||||
PKG_SITE="http://www.kernel.org"
|
||||
PKG_DEPENDS_HOST="ccache:host rsync:host openssl:host"
|
||||
|
|
47
packages/kernel/linux/patches/X86_64/001-ayaneo-air.patch
Normal file
47
packages/kernel/linux/patches/X86_64/001-ayaneo-air.patch
Normal file
|
@ -0,0 +1,47 @@
|
|||
From 1fa1da0a951b32aada6f924b71a4417f101b2ed0 Mon Sep 17 00:00:00 2001
|
||||
From: Maya Matuszczyk <maccraft123mc@gmail.com>
|
||||
Date: Thu, 25 Aug 2022 20:58:34 +0200
|
||||
Subject: [PATCH] drm: panel-orientation-quirks: Add quirk for Aya Neo Air
|
||||
|
||||
Yet another x86 gaming handheld.
|
||||
|
||||
This one has many SKUs with quite a few of DMI strings,
|
||||
so let's just use a catchall, just as with Aya Neo Next.
|
||||
|
||||
Signed-off-by: Maya Matuszczyk <maccraft123mc@gmail.com>
|
||||
---
|
||||
drivers/gpu/drm/drm_panel_orientation_quirks.c | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/drivers/gpu/drm/drm_panel_orientation_quirks.c b/drivers/gpu/drm/drm_panel_orientation_quirks.c
|
||||
index fc1728d46ac2..842d974a95c3 100644
|
||||
--- a/drivers/gpu/drm/drm_panel_orientation_quirks.c
|
||||
+++ b/drivers/gpu/drm/drm_panel_orientation_quirks.c
|
||||
@@ -103,6 +103,12 @@ static const struct drm_dmi_panel_orientation_data lcd800x1280_rightside_up = {
|
||||
.orientation = DRM_MODE_PANEL_ORIENTATION_RIGHT_UP,
|
||||
};
|
||||
|
||||
+static const struct drm_dmi_panel_orientation_data lcd1080x1920_leftside_up = {
|
||||
+ .width = 1080,
|
||||
+ .height = 1920,
|
||||
+ .orientation = DRM_MODE_PANEL_ORIENTATION_LEFT_UP,
|
||||
+};
|
||||
+
|
||||
static const struct drm_dmi_panel_orientation_data lcd1200x1920_rightside_up = {
|
||||
.width = 1200,
|
||||
.height = 1920,
|
||||
@@ -152,6 +158,12 @@ static const struct dmi_system_id orientation_data[] = {
|
||||
DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "AYA NEO 2021"),
|
||||
},
|
||||
.driver_data = (void *)&lcd800x1280_rightside_up,
|
||||
+ }, { /* AYA NEO AIR */
|
||||
+ .matches = {
|
||||
+ DMI_EXACT_MATCH(DMI_SYS_VENDOR, "AYANEO"),
|
||||
+ DMI_MATCH(DMI_BOARD_NAME, "AIR"),
|
||||
+ },
|
||||
+ .driver_data = (void *)&lcd1080x1920_leftside_up,
|
||||
}, { /* AYA NEO NEXT */
|
||||
.matches = {
|
||||
DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "AYANEO"),
|
||||
--
|
||||
2.37.2
|
1
packages/kernel/linux/patches/handheld
Symbolic link
1
packages/kernel/linux/patches/handheld
Symbolic link
|
@ -0,0 +1 @@
|
|||
X86_64
|
|
@ -7,7 +7,7 @@ PKG_VERSION="7a0bc35c4b2d9bd1c6fd76866a8a86807a626591" # 1.41
|
|||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.connman.net"
|
||||
PKG_URL="https://git.kernel.org/pub/scm/network/connman/connman.git/snapshot/connman-$PKG_VERSION.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain glib readline dbus iptables wpa_supplicant"
|
||||
PKG_DEPENDS_TARGET="toolchain glib ncurses readline dbus iptables wpa_supplicant"
|
||||
PKG_LONGDESC="A modular network connection manager."
|
||||
PKG_TOOLCHAIN="autotools"
|
||||
|
||||
|
|
|
@ -43,4 +43,6 @@ Checking value of GNUTLS_CIPHER_AES_128_CFB8: OK
|
|||
Checking value of GNUTLS_MAC_AES_CMAC_128: OK
|
||||
Checking whether fcntl supports flags to send direct I/O availability signals: OK
|
||||
Checking whether fcntl supports setting/geting hints: OK
|
||||
Checking for gnutls fips mode support: NO
|
||||
Checking for readlink breakage: NO
|
||||
|
||||
|
|
|
@ -3,11 +3,12 @@
|
|||
# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="samba"
|
||||
PKG_VERSION="4.14.12"
|
||||
PKG_VERSION="4.16.4"
|
||||
PKG_SHA256="9532f848fb125a17e4e5d98e1ae8b42f210ed4433835e815b97c5dde6dc4702f"
|
||||
PKG_LICENSE="GPLv3+"
|
||||
PKG_SITE="https://www.samba.org"
|
||||
PKG_URL="https://download.samba.org/pub/samba/stable/${PKG_NAME}-${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain attr heimdal:host e2fsprogs Python3 zlib readline popt libaio connman gnutls"
|
||||
PKG_DEPENDS_TARGET="toolchain attr heimdal:host e2fsprogs Python3 libunwind zlib readline popt libaio ncurses connman gnutls wsdd2"
|
||||
PKG_NEED_UNPACK="$(get_pkg_directory heimdal) $(get_pkg_directory e2fsprogs)"
|
||||
PKG_LONGDESC="A free SMB / CIFS fileserver and client."
|
||||
PKG_BUILD_FLAGS="-gold"
|
||||
|
@ -44,7 +45,6 @@ configure_package() {
|
|||
--cross-answers=${PKG_BUILD}/cache.txt \
|
||||
--hostcc=gcc \
|
||||
--enable-fhs \
|
||||
--with-static-modules=vfs_widelinks \
|
||||
--without-dmapi \
|
||||
--disable-glusterfs \
|
||||
--disable-rpath \
|
||||
|
@ -61,7 +61,6 @@ configure_package() {
|
|||
--without-ad-dc \
|
||||
--without-automount \
|
||||
--without-cluster-support \
|
||||
--without-dnsupdate \
|
||||
--without-fam \
|
||||
--without-gettext \
|
||||
--without-gpgme \
|
||||
|
@ -95,7 +94,7 @@ pre_configure_target() {
|
|||
rm -rf .${TARGET_NAME}
|
||||
|
||||
# work around link issues
|
||||
export LDFLAGS="${LDFLAGS} -lreadline -lncurses -ltinfo"
|
||||
export LDFLAGS="${LDFLAGS} -lreadline -lncurses"
|
||||
|
||||
# support 64-bit offsets and seeks on 32-bit platforms
|
||||
if [ "${TARGET_ARCH}" = "arm" ]; then
|
||||
|
@ -123,12 +122,12 @@ pre_make_target() {
|
|||
}
|
||||
|
||||
make_target() {
|
||||
./buildtools/bin/waf build ${PKG_WAF_VERBOSE} --targets=${PKG_SAMBA_TARGET} -j${CONCURRENCY_MAKE_LEVEL}
|
||||
make ${PKG_SAMBA_TARGET} -j${CONCURRENCY_MAKE_LEVEL}
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
./buildtools/bin/waf install ${PKG_WAF_VERBOSE} --destdir=${SYSROOT_PREFIX} --targets=smbclient -j${CONCURRENCY_MAKE_LEVEL}
|
||||
./buildtools/bin/waf install ${PKG_WAF_VERBOSE} --destdir=${INSTALL} --targets=${PKG_SAMBA_TARGET} -j${CONCURRENCY_MAKE_LEVEL}
|
||||
PYTHONHASHSEED=1 WAF_MAKE=1 ./buildtools/bin/waf install ${PKG_WAF_VERBOSE} --destdir=${SYSROOT_PREFIX} --targets=smbclient -j${CONCURRENCY_MAKE_LEVEL}
|
||||
PYTHONHASHSEED=1 WAF_MAKE=1 ./buildtools/bin/waf install ${PKG_WAF_VERBOSE} --destdir=${INSTALL} --targets=${PKG_SAMBA_TARGET} -j${CONCURRENCY_MAKE_LEVEL}
|
||||
}
|
||||
|
||||
copy_directory_of_links() {
|
||||
|
|
|
@ -0,0 +1,733 @@
|
|||
From cf43283d9dac9116e178364b1005a32756fffa75 Mon Sep 17 00:00:00 2001
|
||||
From: Andreas Schneider <asn@samba.org>
|
||||
Date: Sat, 19 Feb 2022 08:52:17 +0100
|
||||
Subject: [PATCH 1/8] buildtools: Reformat shell scripts
|
||||
|
||||
shfmt -f buildtools | xargs shfmt -w -p -i 0 -fn
|
||||
|
||||
Signed-off-by: Andreas Schneider <asn@samba.org>
|
||||
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
|
||||
(cherry picked from commit 2d5d88ff34532ba2d78997467e5720bba480f07e)
|
||||
---
|
||||
buildtools/compare_config_h4.sh | 4 +-
|
||||
buildtools/compare_generated.sh | 59 ++++++++++++++-------------
|
||||
buildtools/compare_install.sh | 4 +-
|
||||
buildtools/scripts/abi_gen.sh | 22 +++++------
|
||||
buildtools/scripts/autogen-waf.sh | 6 +--
|
||||
buildtools/testwaf.sh | 66 +++++++++++++++----------------
|
||||
6 files changed, 80 insertions(+), 81 deletions(-)
|
||||
|
||||
diff --git a/buildtools/compare_config_h4.sh b/buildtools/compare_config_h4.sh
|
||||
index b78b36fdd0fa..fee8abfbd503 100755
|
||||
--- a/buildtools/compare_config_h4.sh
|
||||
+++ b/buildtools/compare_config_h4.sh
|
||||
@@ -3,8 +3,8 @@
|
||||
# compare the generated config.h from a waf build with existing samba
|
||||
# build
|
||||
|
||||
-grep "^.define" bin/default/source4/include/config.h | sort > waf-config.h
|
||||
-grep "^.define" $HOME/samba_old/source4/include/config.h | sort > old-config.h
|
||||
+grep "^.define" bin/default/source4/include/config.h | sort >waf-config.h
|
||||
+grep "^.define" $HOME/samba_old/source4/include/config.h | sort >old-config.h
|
||||
|
||||
comm -23 old-config.h waf-config.h
|
||||
|
||||
diff --git a/buildtools/compare_generated.sh b/buildtools/compare_generated.sh
|
||||
index ebef8a979bde..e62657958139 100755
|
||||
--- a/buildtools/compare_generated.sh
|
||||
+++ b/buildtools/compare_generated.sh
|
||||
@@ -10,41 +10,40 @@ gen_files=$(cd bin/default && find . -type f -name '*.[ch]')
|
||||
|
||||
strip_file()
|
||||
{
|
||||
- in_file=$1
|
||||
- out_file=$2
|
||||
- cat $in_file |
|
||||
- grep -v 'The following definitions come from' |
|
||||
- grep -v 'Automatically generated at' |
|
||||
- grep -v 'Generated from' |
|
||||
- sed 's|/home/tnagy/samba/source4||g' |
|
||||
- sed 's|/home/tnagy/samba/|../|g' |
|
||||
- sed 's|bin/default/source4/||g' |
|
||||
- sed 's|bin/default/|../|g' |
|
||||
- sed 's/define _____/define ___/g' |
|
||||
- sed 's/define __*/define _/g' |
|
||||
- sed 's/define _DEFAULT_/define _/g' |
|
||||
- sed 's/define _SOURCE4_/define ___/g' |
|
||||
- sed 's/define ___/define _/g' |
|
||||
- sed 's/ifndef ___/ifndef _/g' |
|
||||
- sed 's|endif /* ____|endif /* __|g' |
|
||||
- sed s/__DEFAULT_SOURCE4/__/ |
|
||||
- sed s/__DEFAULT_SOURCE4/__/ |
|
||||
- sed s/__DEFAULT/____/ > $out_file
|
||||
+ in_file=$1
|
||||
+ out_file=$2
|
||||
+ cat $in_file |
|
||||
+ grep -v 'The following definitions come from' |
|
||||
+ grep -v 'Automatically generated at' |
|
||||
+ grep -v 'Generated from' |
|
||||
+ sed 's|/home/tnagy/samba/source4||g' |
|
||||
+ sed 's|/home/tnagy/samba/|../|g' |
|
||||
+ sed 's|bin/default/source4/||g' |
|
||||
+ sed 's|bin/default/|../|g' |
|
||||
+ sed 's/define _____/define ___/g' |
|
||||
+ sed 's/define __*/define _/g' |
|
||||
+ sed 's/define _DEFAULT_/define _/g' |
|
||||
+ sed 's/define _SOURCE4_/define ___/g' |
|
||||
+ sed 's/define ___/define _/g' |
|
||||
+ sed 's/ifndef ___/ifndef _/g' |
|
||||
+ sed 's|endif /* ____|endif /* __|g' |
|
||||
+ sed s/__DEFAULT_SOURCE4/__/ |
|
||||
+ sed s/__DEFAULT_SOURCE4/__/ |
|
||||
+ sed s/__DEFAULT/____/ >$out_file
|
||||
}
|
||||
|
||||
compare_file()
|
||||
{
|
||||
- f=$f
|
||||
- bname=$(basename $f)
|
||||
- t1=/tmp/$bname.old.$$
|
||||
- t2=/tmp/$bname.new.$$
|
||||
- strip_file $old_build/$f $t1
|
||||
- strip_file bin/default/$f $t2
|
||||
- diff -u -b $t1 $t2 2>&1
|
||||
- rm -f $t1 $t2
|
||||
+ f=$f
|
||||
+ bname=$(basename $f)
|
||||
+ t1=/tmp/$bname.old.$$
|
||||
+ t2=/tmp/$bname.new.$$
|
||||
+ strip_file $old_build/$f $t1
|
||||
+ strip_file bin/default/$f $t2
|
||||
+ diff -u -b $t1 $t2 2>&1
|
||||
+ rm -f $t1 $t2
|
||||
}
|
||||
|
||||
for f in $gen_files; do
|
||||
- compare_file $f
|
||||
+ compare_file $f
|
||||
done
|
||||
-
|
||||
diff --git a/buildtools/compare_install.sh b/buildtools/compare_install.sh
|
||||
index b964117550b6..37772a46a4ca 100755
|
||||
--- a/buildtools/compare_install.sh
|
||||
+++ b/buildtools/compare_install.sh
|
||||
@@ -3,6 +3,6 @@
|
||||
prefix1="$1"
|
||||
prefix2="$2"
|
||||
|
||||
-(cd $prefix1 && find . ) | sort > p1.txt
|
||||
-(cd $prefix2 && find . ) | sort > p2.txt
|
||||
+(cd $prefix1 && find .) | sort >p1.txt
|
||||
+(cd $prefix2 && find .) | sort >p2.txt
|
||||
diff -u p[12].txt
|
||||
diff --git a/buildtools/scripts/autogen-waf.sh b/buildtools/scripts/autogen-waf.sh
|
||||
index 7a6e94c5ec4d..a0ed80c33fa6 100755
|
||||
--- a/buildtools/scripts/autogen-waf.sh
|
||||
+++ b/buildtools/scripts/autogen-waf.sh
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
-p=`dirname $0`
|
||||
+p=$(dirname $0)
|
||||
|
||||
echo "Setting up for waf build"
|
||||
|
||||
@@ -13,12 +13,12 @@ echo "Found buildtools in $p/$d"
|
||||
|
||||
echo "Setting up configure"
|
||||
rm -f $p/configure $p/include/config*.h*
|
||||
-sed "s|BUILDTOOLS|$d|g;s|BUILDPATH|$p|g" < "$p/$d/scripts/configure.waf" > $p/configure
|
||||
+sed "s|BUILDTOOLS|$d|g;s|BUILDPATH|$p|g" <"$p/$d/scripts/configure.waf" >$p/configure
|
||||
chmod +x $p/configure
|
||||
|
||||
echo "Setting up Makefile"
|
||||
rm -f $p/makefile $p/Makefile
|
||||
-sed "s|BUILDTOOLS|$d|g" < "$p/$d/scripts/Makefile.waf" > $p/Makefile
|
||||
+sed "s|BUILDTOOLS|$d|g" <"$p/$d/scripts/Makefile.waf" >$p/Makefile
|
||||
|
||||
echo "done. Now run $p/configure or $p/configure.developer then make."
|
||||
if [ $p != "." ]; then
|
||||
diff --git a/buildtools/testwaf.sh b/buildtools/testwaf.sh
|
||||
index 127e52589103..3e8e6431c783 100755
|
||||
--- a/buildtools/testwaf.sh
|
||||
+++ b/buildtools/testwaf.sh
|
||||
@@ -9,52 +9,52 @@ cd $d/..
|
||||
PREFIX=$HOME/testprefix
|
||||
|
||||
if [ $# -gt 0 ]; then
|
||||
- tests="$*"
|
||||
+ tests="$*"
|
||||
else
|
||||
- tests="lib/replace lib/talloc lib/tevent lib/tdb lib/ldb"
|
||||
+ tests="lib/replace lib/talloc lib/tevent lib/tdb lib/ldb"
|
||||
fi
|
||||
|
||||
echo "testing in dirs $tests"
|
||||
|
||||
for d in $tests; do
|
||||
- echo "`date`: testing $d"
|
||||
- pushd $d
|
||||
- rm -rf bin
|
||||
- type waf
|
||||
- waf dist
|
||||
- ./configure -C --enable-developer --prefix=$PREFIX
|
||||
- time make
|
||||
- make install
|
||||
- make distcheck
|
||||
- case $d in
|
||||
+ echo "$(date): testing $d"
|
||||
+ pushd $d
|
||||
+ rm -rf bin
|
||||
+ type waf
|
||||
+ waf dist
|
||||
+ ./configure -C --enable-developer --prefix=$PREFIX
|
||||
+ time make
|
||||
+ make install
|
||||
+ make distcheck
|
||||
+ case $d in
|
||||
"lib/ldb")
|
||||
- ldd bin/ldbadd
|
||||
- ;;
|
||||
+ ldd bin/ldbadd
|
||||
+ ;;
|
||||
"lib/replace")
|
||||
- ldd bin/replace_testsuite
|
||||
- ;;
|
||||
+ ldd bin/replace_testsuite
|
||||
+ ;;
|
||||
"lib/talloc")
|
||||
- ldd bin/talloc_testsuite
|
||||
- ;;
|
||||
+ ldd bin/talloc_testsuite
|
||||
+ ;;
|
||||
"lib/tdb")
|
||||
- ldd bin/tdbtool
|
||||
- ;;
|
||||
- esac
|
||||
- popd
|
||||
+ ldd bin/tdbtool
|
||||
+ ;;
|
||||
+ esac
|
||||
+ popd
|
||||
done
|
||||
|
||||
echo "testing python portability"
|
||||
pushd lib/talloc
|
||||
versions="python2.4 python2.5 python2.6 python3.0 python3.1"
|
||||
for p in $versions; do
|
||||
- ret=$(which $p || echo "failed")
|
||||
- if [ $ret = "failed" ]; then
|
||||
- echo "$p not found, skipping"
|
||||
- continue
|
||||
- fi
|
||||
- echo "Testing $p"
|
||||
- $p ../../buildtools/bin/waf configure -C --enable-developer --prefix=$PREFIX
|
||||
- $p ../../buildtools/bin/waf build install
|
||||
+ ret=$(which $p || echo "failed")
|
||||
+ if [ $ret = "failed" ]; then
|
||||
+ echo "$p not found, skipping"
|
||||
+ continue
|
||||
+ fi
|
||||
+ echo "Testing $p"
|
||||
+ $p ../../buildtools/bin/waf configure -C --enable-developer --prefix=$PREFIX
|
||||
+ $p ../../buildtools/bin/waf build install
|
||||
done
|
||||
popd
|
||||
|
||||
@@ -62,9 +62,9 @@ echo "testing cross compiling"
|
||||
pushd lib/talloc
|
||||
ret=$(which arm-linux-gnueabi-gcc || echo "failed")
|
||||
if [ $ret != "failed" ]; then
|
||||
- CC=arm-linux-gnueabi-gcc ./configure -C --prefix=$PREFIX --cross-compile --cross-execute='runarm'
|
||||
- make && make install
|
||||
+ CC=arm-linux-gnueabi-gcc ./configure -C --prefix=$PREFIX --cross-compile --cross-execute='runarm'
|
||||
+ make && make install
|
||||
else
|
||||
- echo "Cross-compiler not installed, skipping test"
|
||||
+ echo "Cross-compiler not installed, skipping test"
|
||||
fi
|
||||
popd
|
||||
--
|
||||
2.25.1
|
||||
|
||||
|
||||
From bccb8b807bb1c00ffc2cd95cadfee253eb0d0cff Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Metzmacher <metze@samba.org>
|
||||
Date: Mon, 28 Mar 2022 12:38:02 +0200
|
||||
Subject: [PATCH 2/8] buildtools: remove unused testwaf.sh
|
||||
|
||||
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
||||
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
|
||||
(cherry picked from commit 42eeed05f1aed10b48f7008a18e47cf15ac2c010)
|
||||
---
|
||||
buildtools/testwaf.sh | 70 -------------------------------------------
|
||||
1 file changed, 70 deletions(-)
|
||||
delete mode 100755 buildtools/testwaf.sh
|
||||
|
||||
diff --git a/buildtools/testwaf.sh b/buildtools/testwaf.sh
|
||||
deleted file mode 100755
|
||||
index 3e8e6431c783..000000000000
|
||||
--- a/buildtools/testwaf.sh
|
||||
+++ /dev/null
|
||||
@@ -1,70 +0,0 @@
|
||||
-#!/bin/bash
|
||||
-
|
||||
-set -e
|
||||
-set -x
|
||||
-
|
||||
-d=$(dirname $0)
|
||||
-
|
||||
-cd $d/..
|
||||
-PREFIX=$HOME/testprefix
|
||||
-
|
||||
-if [ $# -gt 0 ]; then
|
||||
- tests="$*"
|
||||
-else
|
||||
- tests="lib/replace lib/talloc lib/tevent lib/tdb lib/ldb"
|
||||
-fi
|
||||
-
|
||||
-echo "testing in dirs $tests"
|
||||
-
|
||||
-for d in $tests; do
|
||||
- echo "$(date): testing $d"
|
||||
- pushd $d
|
||||
- rm -rf bin
|
||||
- type waf
|
||||
- waf dist
|
||||
- ./configure -C --enable-developer --prefix=$PREFIX
|
||||
- time make
|
||||
- make install
|
||||
- make distcheck
|
||||
- case $d in
|
||||
- "lib/ldb")
|
||||
- ldd bin/ldbadd
|
||||
- ;;
|
||||
- "lib/replace")
|
||||
- ldd bin/replace_testsuite
|
||||
- ;;
|
||||
- "lib/talloc")
|
||||
- ldd bin/talloc_testsuite
|
||||
- ;;
|
||||
- "lib/tdb")
|
||||
- ldd bin/tdbtool
|
||||
- ;;
|
||||
- esac
|
||||
- popd
|
||||
-done
|
||||
-
|
||||
-echo "testing python portability"
|
||||
-pushd lib/talloc
|
||||
-versions="python2.4 python2.5 python2.6 python3.0 python3.1"
|
||||
-for p in $versions; do
|
||||
- ret=$(which $p || echo "failed")
|
||||
- if [ $ret = "failed" ]; then
|
||||
- echo "$p not found, skipping"
|
||||
- continue
|
||||
- fi
|
||||
- echo "Testing $p"
|
||||
- $p ../../buildtools/bin/waf configure -C --enable-developer --prefix=$PREFIX
|
||||
- $p ../../buildtools/bin/waf build install
|
||||
-done
|
||||
-popd
|
||||
-
|
||||
-echo "testing cross compiling"
|
||||
-pushd lib/talloc
|
||||
-ret=$(which arm-linux-gnueabi-gcc || echo "failed")
|
||||
-if [ $ret != "failed" ]; then
|
||||
- CC=arm-linux-gnueabi-gcc ./configure -C --prefix=$PREFIX --cross-compile --cross-execute='runarm'
|
||||
- make && make install
|
||||
-else
|
||||
- echo "Cross-compiler not installed, skipping test"
|
||||
-fi
|
||||
-popd
|
||||
--
|
||||
2.25.1
|
||||
|
||||
|
||||
From 8b609eb416bd737578a79beabb3bd736d341e326 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Metzmacher <metze@samba.org>
|
||||
Date: Mon, 28 Mar 2022 12:49:24 +0200
|
||||
Subject: [PATCH 3/8] lib/fuzzing/README.md: don't use waf directly
|
||||
|
||||
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
||||
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
|
||||
(cherry picked from commit 10d69da1d34b2b11920d9bf051f5a26dbbcadf02)
|
||||
---
|
||||
lib/fuzzing/README.md | 12 ++++++------
|
||||
1 file changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/lib/fuzzing/README.md b/lib/fuzzing/README.md
|
||||
index 33d33b923905..d3e34bd79a36 100644
|
||||
--- a/lib/fuzzing/README.md
|
||||
+++ b/lib/fuzzing/README.md
|
||||
@@ -17,9 +17,9 @@ Example command line to build binaries for use with
|
||||
[honggfuzz](https://github.com/google/honggfuzz/):
|
||||
|
||||
```sh
|
||||
-buildtools/bin/waf -C --without-gettext --enable-debug --enable-developer \
|
||||
+./configure -C --without-gettext --enable-debug --enable-developer \
|
||||
--address-sanitizer --enable-libfuzzer --abi-check-disable \
|
||||
- CC=.../honggfuzz/hfuzz_cc/hfuzz-clang configure \
|
||||
+ CC=.../honggfuzz/hfuzz_cc/hfuzz-clang \
|
||||
LINK_CC=.../honggfuzz/hfuzz_cc/hfuzz-clang
|
||||
```
|
||||
|
||||
@@ -30,7 +30,7 @@ Example for fuzzing `tiniparser` using `honggfuzz` (see `--help` for more
|
||||
options):
|
||||
|
||||
```sh
|
||||
-buildtools/bin/waf --targets=fuzz_tiniparser build && \
|
||||
+make bin/fuzz_tiniparser && \
|
||||
.../honggfuzz/honggfuzz --sanitizers --timeout 3 --max_file_size 256 \
|
||||
--rlimit_rss 100 -f .../tiniparser-corpus -- bin/fuzz_tiniparser
|
||||
```
|
||||
@@ -43,9 +43,9 @@ Example command line to build binaries for use with
|
||||
[afl](http://lcamtuf.coredump.cx/afl/)
|
||||
|
||||
```sh
|
||||
-buildtools/bin/waf -C --without-gettext --enable-debug --enable-developer \
|
||||
+./configure -C --without-gettext --enable-debug --enable-developer \
|
||||
--enable-afl-fuzzer --abi-check-disable \
|
||||
- CC=afl-gcc configure
|
||||
+ CC=afl-gcc
|
||||
```
|
||||
|
||||
## Fuzzing tiniparser
|
||||
@@ -54,7 +54,7 @@ Example for fuzzing `tiniparser` using `afl-fuzz` (see `--help` for more
|
||||
options):
|
||||
|
||||
```sh
|
||||
-buildtools/bin/waf --targets=fuzz_tiniparser build && \
|
||||
+make bin/fuzz_tiniparser build && \
|
||||
afl-fuzz -m 200 -i inputdir -o outputdir -- bin/fuzz_tiniparser
|
||||
```
|
||||
|
||||
--
|
||||
2.25.1
|
||||
|
||||
|
||||
From 16d566b1139f56686fac969d3bc362be162bad28 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Metzmacher <metze@samba.org>
|
||||
Date: Mon, 28 Mar 2022 12:50:55 +0200
|
||||
Subject: [PATCH 5/8] wafsamba: let test_duplicate_symbol.sh export
|
||||
PYTHONHASHSEED=1
|
||||
|
||||
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
||||
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
|
||||
(cherry picked from commit a6b1e4b5766205b7337e0e4b00944184289bfc36)
|
||||
---
|
||||
buildtools/wafsamba/test_duplicate_symbol.sh | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/buildtools/wafsamba/test_duplicate_symbol.sh b/buildtools/wafsamba/test_duplicate_symbol.sh
|
||||
index 46f44a67dcf8..dffac7570022 100755
|
||||
--- a/buildtools/wafsamba/test_duplicate_symbol.sh
|
||||
+++ b/buildtools/wafsamba/test_duplicate_symbol.sh
|
||||
@@ -5,6 +5,9 @@
|
||||
|
||||
subunit_start_test duplicate_symbols
|
||||
|
||||
+PYTHONHASHSEED=1
|
||||
+export PYTHONHASHSEED
|
||||
+
|
||||
if $PYTHON ./buildtools/bin/waf build --dup-symbol-check; then
|
||||
subunit_pass_test duplicate_symbols
|
||||
else
|
||||
--
|
||||
2.25.1
|
||||
|
||||
|
||||
From 73295e83a14b1ed662ca842b531c1f84143301ca Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Metzmacher <metze@samba.org>
|
||||
Date: Mon, 28 Mar 2022 12:59:12 +0200
|
||||
Subject: [PATCH 6/8] configure/Makefile: export PYTHONHASHSEED=1 in all
|
||||
'configure/Makefile' scripts
|
||||
|
||||
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
||||
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
|
||||
(cherry picked from commit 22c46d9f41876d9ec7187148e658d1692bf37cdd)
|
||||
---
|
||||
buildtools/scripts/Makefile.waf | 4 ++--
|
||||
buildtools/scripts/configure.waf | 11 +++++++++--
|
||||
configure | 4 ++++
|
||||
ctdb/Makefile | 2 +-
|
||||
ctdb/configure | 7 +++++++
|
||||
lib/ldb/configure | 7 +++++++
|
||||
lib/replace/configure | 7 +++++++
|
||||
lib/talloc/configure | 7 +++++++
|
||||
lib/tdb/configure | 7 +++++++
|
||||
lib/tevent/configure | 7 +++++++
|
||||
10 files changed, 58 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/buildtools/scripts/Makefile.waf b/buildtools/scripts/Makefile.waf
|
||||
index 5fc939c99e03..a15a5f87607e 100644
|
||||
--- a/buildtools/scripts/Makefile.waf
|
||||
+++ b/buildtools/scripts/Makefile.waf
|
||||
@@ -1,7 +1,7 @@
|
||||
# simple makefile wrapper to run waf
|
||||
|
||||
-WAF_BINARY=BUILDTOOLS/bin/waf
|
||||
-WAF=WAF_MAKE=1 $(WAF_BINARY)
|
||||
+WAF_BINARY=$(PYTHON) BUILDTOOLS/bin/waf
|
||||
+WAF=PYTHONHASHSEED=1 WAF_MAKE=1 $(WAF_BINARY)
|
||||
|
||||
all:
|
||||
$(WAF) build
|
||||
diff --git a/buildtools/scripts/configure.waf b/buildtools/scripts/configure.waf
|
||||
index a7d8d1dbd641..ccb62849a54f 100755
|
||||
--- a/buildtools/scripts/configure.waf
|
||||
+++ b/buildtools/scripts/configure.waf
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
-PREVPATH=`dirname $0`
|
||||
+PREVPATH=$(dirname $0)
|
||||
|
||||
WAF=BUILDTOOLS/bin/waf
|
||||
|
||||
@@ -9,6 +9,13 @@ WAF=BUILDTOOLS/bin/waf
|
||||
JOBS=1
|
||||
export JOBS
|
||||
|
||||
+# Make sure we don't have any library preloaded.
|
||||
+unset LD_PRELOAD
|
||||
+
|
||||
+# Make sure we get stable hashes
|
||||
+PYTHONHASHSEED=1
|
||||
+export PYTHONHASHSEED
|
||||
+
|
||||
cd BUILDPATH || exit 1
|
||||
-$WAF configure "$@" || exit 1
|
||||
+$PYTHON $WAF configure "$@" || exit 1
|
||||
cd $PREVPATH
|
||||
diff --git a/configure b/configure
|
||||
index a6ca50feb470..9153c0e5f784 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -12,6 +12,10 @@ export JOBS
|
||||
# Make sure we don't have any library preloaded.
|
||||
unset LD_PRELOAD
|
||||
|
||||
+# Make sure we get stable hashes
|
||||
+PYTHONHASHSEED=1
|
||||
+export PYTHONHASHSEED
|
||||
+
|
||||
cd . || exit 1
|
||||
$PYTHON $WAF configure "$@" || exit 1
|
||||
cd $PREVPATH
|
||||
diff --git a/ctdb/Makefile b/ctdb/Makefile
|
||||
index ec362e294082..5dbc7acdc54e 100644
|
||||
--- a/ctdb/Makefile
|
||||
+++ b/ctdb/Makefile
|
||||
@@ -1,7 +1,7 @@
|
||||
# simple makefile wrapper to run waf
|
||||
|
||||
WAF_BINARY=$(PYTHON) ../buildtools/bin/waf
|
||||
-WAF=WAF_MAKE=1 $(WAF_BINARY)
|
||||
+WAF=PYTHONHASHSEED=1 WAF_MAKE=1 $(WAF_BINARY)
|
||||
|
||||
all:
|
||||
$(WAF) build
|
||||
diff --git a/ctdb/configure b/ctdb/configure
|
||||
index dbb0c1446b51..48b786b1612d 100755
|
||||
--- a/ctdb/configure
|
||||
+++ b/ctdb/configure
|
||||
@@ -10,6 +10,13 @@ WAF=buildtools/bin/waf
|
||||
JOBS=1
|
||||
export JOBS
|
||||
|
||||
+# Make sure we don't have any library preloaded.
|
||||
+unset LD_PRELOAD
|
||||
+
|
||||
+# Make sure we get stable hashes
|
||||
+PYTHONHASHSEED=1
|
||||
+export PYTHONHASHSEED
|
||||
+
|
||||
cd . || exit 1
|
||||
$PYTHON $WAF configure "$@" || exit 1
|
||||
cd $PREVPATH
|
||||
diff --git a/lib/ldb/configure b/lib/ldb/configure
|
||||
index 6c931bfbf5e2..28d62ab27ae2 100755
|
||||
--- a/lib/ldb/configure
|
||||
+++ b/lib/ldb/configure
|
||||
@@ -16,6 +16,13 @@ fi
|
||||
JOBS=1
|
||||
export JOBS
|
||||
|
||||
+# Make sure we don't have any library preloaded.
|
||||
+unset LD_PRELOAD
|
||||
+
|
||||
+# Make sure we get stable hashes
|
||||
+PYTHONHASHSEED=1
|
||||
+export PYTHONHASHSEED
|
||||
+
|
||||
cd . || exit 1
|
||||
$PYTHON $WAF configure "$@" || exit 1
|
||||
cd $PREVPATH
|
||||
diff --git a/lib/replace/configure b/lib/replace/configure
|
||||
index d8a8d2ac2f39..091f814e5f2c 100755
|
||||
--- a/lib/replace/configure
|
||||
+++ b/lib/replace/configure
|
||||
@@ -16,6 +16,13 @@ fi
|
||||
JOBS=1
|
||||
export JOBS
|
||||
|
||||
+# Make sure we don't have any library preloaded.
|
||||
+unset LD_PRELOAD
|
||||
+
|
||||
+# Make sure we get stable hashes
|
||||
+PYTHONHASHSEED=1
|
||||
+export PYTHONHASHSEED
|
||||
+
|
||||
cd . || exit 1
|
||||
$PYTHON $WAF configure "$@" || exit 1
|
||||
cd $PREVPATH
|
||||
diff --git a/lib/talloc/configure b/lib/talloc/configure
|
||||
index d8a8d2ac2f39..091f814e5f2c 100755
|
||||
--- a/lib/talloc/configure
|
||||
+++ b/lib/talloc/configure
|
||||
@@ -16,6 +16,13 @@ fi
|
||||
JOBS=1
|
||||
export JOBS
|
||||
|
||||
+# Make sure we don't have any library preloaded.
|
||||
+unset LD_PRELOAD
|
||||
+
|
||||
+# Make sure we get stable hashes
|
||||
+PYTHONHASHSEED=1
|
||||
+export PYTHONHASHSEED
|
||||
+
|
||||
cd . || exit 1
|
||||
$PYTHON $WAF configure "$@" || exit 1
|
||||
cd $PREVPATH
|
||||
diff --git a/lib/tdb/configure b/lib/tdb/configure
|
||||
index d8a8d2ac2f39..091f814e5f2c 100755
|
||||
--- a/lib/tdb/configure
|
||||
+++ b/lib/tdb/configure
|
||||
@@ -16,6 +16,13 @@ fi
|
||||
JOBS=1
|
||||
export JOBS
|
||||
|
||||
+# Make sure we don't have any library preloaded.
|
||||
+unset LD_PRELOAD
|
||||
+
|
||||
+# Make sure we get stable hashes
|
||||
+PYTHONHASHSEED=1
|
||||
+export PYTHONHASHSEED
|
||||
+
|
||||
cd . || exit 1
|
||||
$PYTHON $WAF configure "$@" || exit 1
|
||||
cd $PREVPATH
|
||||
diff --git a/lib/tevent/configure b/lib/tevent/configure
|
||||
index c3c444754e3d..0dc9bace4356 100755
|
||||
--- a/lib/tevent/configure
|
||||
+++ b/lib/tevent/configure
|
||||
@@ -16,6 +16,13 @@ fi
|
||||
JOBS=1
|
||||
export JOBS
|
||||
|
||||
+# Make sure we don't have any library preloaded.
|
||||
+unset LD_PRELOAD
|
||||
+
|
||||
+# Make sure we get stable hashes
|
||||
+PYTHONHASHSEED=1
|
||||
+export PYTHONHASHSEED
|
||||
+
|
||||
cd . || exit 1
|
||||
$PYTHON $WAF configure "$@" || exit 1
|
||||
cd $PREVPATH
|
||||
--
|
||||
2.25.1
|
||||
|
||||
|
||||
From 2cd1e53284c0c212c62d909028c5bd9872493934 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Metzmacher <metze@samba.org>
|
||||
Date: Mon, 28 Mar 2022 12:38:36 +0200
|
||||
Subject: [PATCH 7/8] ctdb/packaging/RPM: don't use waf directly
|
||||
|
||||
./configure && make && make install is will always work.
|
||||
|
||||
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
||||
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
|
||||
(cherry picked from commit aa02cf3c4449cb0a22da8f359f0b3edc4f1d9bb7)
|
||||
---
|
||||
ctdb/packaging/RPM/ctdb.spec.in | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/ctdb/packaging/RPM/ctdb.spec.in b/ctdb/packaging/RPM/ctdb.spec.in
|
||||
index 80eb2945e419..ea5c5a256ec9 100644
|
||||
--- a/ctdb/packaging/RPM/ctdb.spec.in
|
||||
+++ b/ctdb/packaging/RPM/ctdb.spec.in
|
||||
@@ -88,7 +88,7 @@ fi
|
||||
export CC
|
||||
|
||||
CFLAGS="$RPM_OPT_FLAGS $EXTRA -D_GNU_SOURCE" \
|
||||
-$PYTHON ./buildtools/bin/waf configure \
|
||||
+./configure \
|
||||
--builtin-libraries=replace,popt \
|
||||
--bundled-libraries=!talloc,!tevent,!tdb \
|
||||
--minimum-library-version=talloc:%libtalloc_version,tdb:%libtdb_version,tevent:%libtevent_version \
|
||||
@@ -103,7 +103,7 @@ $PYTHON ./buildtools/bin/waf configure \
|
||||
--mandir=%{_mandir} \
|
||||
--localstatedir=%{_localstatedir}
|
||||
|
||||
-$PYTHON ./buildtools/bin/waf build
|
||||
+make -j
|
||||
|
||||
%install
|
||||
# Clean up in case there is trash left from a previous build
|
||||
@@ -112,7 +112,7 @@ rm -rf $RPM_BUILD_ROOT
|
||||
# Create the target build directory hierarchy
|
||||
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sudoers.d
|
||||
|
||||
-DESTDIR=$RPM_BUILD_ROOT $PYTHON ./buildtools/bin/waf install
|
||||
+DESTDIR=$RPM_BUILD_ROOT make -j install
|
||||
|
||||
install -m644 config/ctdb.conf $RPM_BUILD_ROOT%{_sysconfdir}/ctdb
|
||||
install -m644 config/ctdb.tunables $RPM_BUILD_ROOT%{_sysconfdir}/ctdb
|
||||
--
|
||||
2.25.1
|
||||
|
||||
|
||||
From 5a6029aa55d806647fe1e2e0c3a6ca58aaf79ca0 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Metzmacher <metze@samba.org>
|
||||
Date: Mon, 28 Mar 2022 13:00:03 +0200
|
||||
Subject: [PATCH 8/8] wafsamba: require PYTHONHASHSEED=1 to be exported
|
||||
|
||||
This avoids a lot of trouble with random build failures,
|
||||
if people try to use waf directly.
|
||||
|
||||
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
||||
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
|
||||
|
||||
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
|
||||
Autobuild-Date(master): Tue Mar 29 23:31:38 UTC 2022 on sn-devel-184
|
||||
|
||||
(cherry picked from commit 420bbb1d92fd2a28725b53f425ba3d214831b660)
|
||||
|
||||
The last 8 patches are backported to avoid people running into:
|
||||
https://bugzilla.samba.org/show_bug.cgi?id=15033
|
||||
and
|
||||
https://bugzilla.samba.org/show_bug.cgi?id=15037
|
||||
---
|
||||
buildtools/wafsamba/wscript | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/buildtools/wafsamba/wscript b/buildtools/wafsamba/wscript
|
||||
index a4d6f3e5c49e..8729b0829daa 100644
|
||||
--- a/buildtools/wafsamba/wscript
|
||||
+++ b/buildtools/wafsamba/wscript
|
||||
@@ -8,6 +8,10 @@ import wafsamba
|
||||
from samba_utils import symlink
|
||||
from optparse import SUPPRESS_HELP
|
||||
|
||||
+phs = os.environ.get("PYTHONHASHSEED", None)
|
||||
+if phs != "1":
|
||||
+ raise Errors.WafError('''PYTHONHASHSEED=1 missing! Don't use waf directly, use ./configure and make!''')
|
||||
+
|
||||
# this forces configure to be re-run if any of the configure
|
||||
# sections of the build scripts change. We have to check
|
||||
# for this in sys.argv as options have not yet been parsed when
|
||||
--
|
||||
2.25.1
|
||||
|
|
@ -41,8 +41,10 @@ diff --git a/wscript_configure_embedded_heimdal b/wscript_configure_embedded_hei
|
|||
index 8c55ae2..4fdae80 100644
|
||||
--- a/wscript_configure_embedded_heimdal
|
||||
+++ b/wscript_configure_embedded_heimdal
|
||||
@@ -1 +1,12 @@
|
||||
conf.RECURSE('source4/heimdal_build')
|
||||
@@ -6,3 +6,14 @@
|
||||
|
||||
conf.define('USING_EMBEDDED_HEIMDAL', 1)
|
||||
conf.RECURSE('third_party/heimdal_build')
|
||||
+
|
||||
+def check_system_heimdal_binary(name):
|
||||
+ if conf.LIB_MAY_BE_BUNDLED(name):
|
||||
|
@ -73,14 +75,14 @@ index 235fa19..4f4a83cd 100644
|
|||
check_system_heimdal_lib("com_err", "com_right_r com_err", "com_err.h")
|
||||
|
||||
if check_system_heimdal_lib("roken", "rk_socket_set_reuseaddr", "roken.h"):
|
||||
@@ -96,7 +88,4 @@ finally:
|
||||
@@ -86,7 +78,4 @@ finally:
|
||||
#if conf.CHECK_BUNDLED_SYSTEM('tommath', checkfunctions='mp_init', headers='tommath.h'):
|
||||
# conf.define('USING_SYSTEM_TOMMATH', 1)
|
||||
|
||||
-check_system_heimdal_binary("compile_et")
|
||||
-check_system_heimdal_binary("asn1_compile")
|
||||
-
|
||||
conf.define('USING_SYSTEM_KRB5', 1)
|
||||
conf.env.KRB5_VENDOR = 'heimdal'
|
||||
--
|
||||
2.20.1
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
diff --git a/docs-xml/wscript_build b/docs-xml/wscript_build
|
||||
--- a/docs-xml/wscript_build 2020-12-05 09:01:19.652459634 +0000
|
||||
+++ b/docs-xml/wscript_build 2020-12-05 09:10:10.639446971 +0000
|
||||
@@ -153,28 +153,3 @@
|
||||
@@ -154,31 +154,3 @@
|
||||
target=parameter_all,
|
||||
rule=smbdotconf_generate_parameter_list,
|
||||
dep_vars=bld.dynconfig_varnames())
|
||||
|
@ -27,6 +27,9 @@ diff --git a/docs-xml/wscript_build b/docs-xml/wscript_build
|
|||
- if conf.env.build_winexe == True:
|
||||
- bld.SAMBAMANPAGES(winexe_manpages)
|
||||
-
|
||||
- if bld.CONFIG_SET('ENABLE_SELFTEST'):
|
||||
- bld.SAMBAMANPAGES('manpages/vfstest.1')
|
||||
-
|
||||
- for manpage in vfs_module_manpages:
|
||||
- if bld.SAMBA3_IS_ENABLED_MODULE(manpage):
|
||||
- bld.SAMBAMANPAGES('manpages/%s.8' % manpage)
|
47
packages/services/docker/cli/package.mk
Normal file
47
packages/services/docker/cli/package.mk
Normal file
|
@ -0,0 +1,47 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2022-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="cli"
|
||||
PKG_VERSION="$(get_pkg_version moby)"
|
||||
PKG_SHA256="2f5949173515b70daa0b78fea7185ffd219ca31f7381a0e1218eeefc7f70199c"
|
||||
PKG_LICENSE="ASL"
|
||||
PKG_SITE="https://github.com/docker/cli"
|
||||
PKG_URL="https://github.com/docker/cli/archive/v${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain go:host"
|
||||
PKG_LONGDESC="The Docker CLI"
|
||||
PKG_TOOLCHAIN="manual"
|
||||
|
||||
# Git commit of the matching release https://github.com/docker/cli/releases
|
||||
export PKG_GIT_COMMIT="3e9117b7e241439e314eaf6fe944b4019fbaa941"
|
||||
|
||||
configure_target() {
|
||||
go_configure
|
||||
|
||||
export LDFLAGS="-w -linkmode external -extldflags -Wl,--unresolved-symbols=ignore-in-shared-libs -extld ${CC}"
|
||||
|
||||
# used for docker version
|
||||
export GITCOMMIT=${PKG_GIT_COMMIT}
|
||||
export VERSION=${PKG_VERSION}
|
||||
export BUILDTIME="$(date --utc)"
|
||||
|
||||
cat > "${PKG_BUILD}/go.mod" << EOF
|
||||
module github.com/docker/cli
|
||||
|
||||
go 1.18
|
||||
EOF
|
||||
|
||||
GO111MODULE=auto ${GOLANG} mod tidy -modfile 'vendor.mod' -compat 1.18
|
||||
GO111MODULE=auto ${GOLANG} mod vendor -modfile vendor.mod
|
||||
}
|
||||
|
||||
make_target() {
|
||||
mkdir -p bin
|
||||
PKG_CLI_FLAGS="-X 'github.com/docker/cli/cli/version.Version=${VERSION}'"
|
||||
PKG_CLI_FLAGS+=" -X 'github.com/docker/cli/cli/version.GitCommit=${GITCOMMIT}'"
|
||||
PKG_CLI_FLAGS+=" -X 'github.com/docker/cli/cli/version.BuildTime=${BUILDTIME}'"
|
||||
${GOLANG} build -mod=mod -modfile=vendor.mod -v -o bin/docker -a -tags "${PKG_DOCKER_BUILDTAGS}" -ldflags "${LDFLAGS} ${PKG_CLI_FLAGS}" ./cmd/docker
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
:
|
||||
}
|
41
packages/services/docker/containerd/package.mk
Normal file
41
packages/services/docker/containerd/package.mk
Normal file
|
@ -0,0 +1,41 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2009-2016 Lukas Rusak (lrusak@libreelec.tv)
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="containerd"
|
||||
PKG_VERSION="1.6.8"
|
||||
PKG_SHA256="f5f938513c28377f64f85e84f2750d39f26b01262f3a062b7e8ce35b560ca407"
|
||||
PKG_LICENSE="APL"
|
||||
PKG_SITE="https://containerd.io"
|
||||
PKG_URL="https://github.com/containerd/containerd/archive/v${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain go:host"
|
||||
PKG_LONGDESC="A daemon to control runC, built for performance and density."
|
||||
PKG_TOOLCHAIN="manual"
|
||||
|
||||
# Git commit of the matching release https://github.com/containerd/containerd/releases
|
||||
PKG_GIT_COMMIT="10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1"
|
||||
|
||||
pre_make_target() {
|
||||
|
||||
go_configure
|
||||
|
||||
export CONTAINERD_VERSION=${PKG_VERSION}
|
||||
export CONTAINERD_REVISION=${PKG_GIT_COMMIT}
|
||||
export CONTAINERD_PKG=github.com/containerd/containerd
|
||||
export LDFLAGS="-w -extldflags -static -X ${CONTAINERD_PKG}/version.Version=${CONTAINERD_VERSION} -X ${CONTAINERD_PKG}/version.Revision=${CONTAINERD_REVISION} -X ${CONTAINERD_PKG}/version.Package=${CONTAINERD_PKG} -extld ${CC}"
|
||||
export GO111MODULE=off
|
||||
|
||||
mkdir -p ${GOPATH}
|
||||
if [ -d ${PKG_BUILD}/vendor ]; then
|
||||
mv ${PKG_BUILD}/vendor ${GOPATH}/src
|
||||
fi
|
||||
|
||||
ln -fs ${PKG_BUILD} ${GOPATH}/src/github.com/containerd/containerd
|
||||
}
|
||||
|
||||
make_target() {
|
||||
mkdir -p bin
|
||||
${GOLANG} build -v -o bin/containerd -a -tags "static_build no_btrfs" -ldflags "${LDFLAGS}" ./cmd/containerd
|
||||
${GOLANG} build -v -o bin/containerd-shim -a -tags "static_build no_btrfs" -ldflags "${LDFLAGS}" ./cmd/containerd-shim
|
||||
${GOLANG} build -v -o bin/containerd-shim-runc-v2 -a -tags "static_build no_btrfs" -ldflags "${LDFLAGS}" ./cmd/containerd-shim-runc-v2
|
||||
}
|
54
packages/services/docker/moby/package.mk
Normal file
54
packages/services/docker/moby/package.mk
Normal file
|
@ -0,0 +1,54 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2022-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="moby"
|
||||
PKG_VERSION="22.06.0-beta.0"
|
||||
PKG_SHA256="d0221f0b1c0eda2629ed8b7f08b4ec86e61cf38e0cf699f5bd01a2b662273b87"
|
||||
PKG_LICENSE="ASL"
|
||||
PKG_SITE="https://mobyproject.org/"
|
||||
PKG_URL="https://github.com/moby/moby/archive/v${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain go:host systemd"
|
||||
PKG_LONGDESC="Moby is an open-source project created by Docker to enable and accelerate software containerization."
|
||||
PKG_TOOLCHAIN="manual"
|
||||
|
||||
# Git commit of the matching release https://github.com/moby/moby
|
||||
export PKG_GIT_COMMIT="a89b84221c8560e7a3dee2a653353429e7628424"
|
||||
|
||||
PKG_MOBY_BUILDTAGS="daemon \
|
||||
autogen \
|
||||
exclude_graphdriver_devicemapper \
|
||||
exclude_graphdriver_aufs \
|
||||
exclude_graphdriver_btrfs \
|
||||
journald"
|
||||
|
||||
configure_target() {
|
||||
go_configure
|
||||
|
||||
export LDFLAGS="-w -linkmode external -extldflags -Wl,--unresolved-symbols=ignore-in-shared-libs -extld ${CC}"
|
||||
|
||||
# used for docker version
|
||||
export GITCOMMIT=${PKG_GIT_COMMIT}
|
||||
export VERSION=${PKG_VERSION}
|
||||
export BUILDTIME="$(date --utc)"
|
||||
|
||||
cat > "${PKG_BUILD}/go.mod" << EOF
|
||||
module github.com/docker/docker
|
||||
|
||||
go 1.18
|
||||
EOF
|
||||
|
||||
GO111MODULE=auto ${GOLANG} mod tidy -modfile 'vendor.mod' -compat 1.18
|
||||
GO111MODULE=auto ${GOLANG} mod vendor -modfile vendor.mod
|
||||
|
||||
bash hack/make/.go-autogen
|
||||
}
|
||||
|
||||
make_target() {
|
||||
mkdir -p bin
|
||||
${GOLANG} build -mod=mod -modfile=vendor.mod -v -o bin/docker-proxy -a -ldflags "${LDFLAGS}" ./cmd/docker-proxy
|
||||
${GOLANG} build -mod=mod -modfile=vendor.mod -v -o bin/dockerd -a -tags "${PKG_MOBY_BUILDTAGS}" -ldflags "${LDFLAGS}" ./cmd/dockerd
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
:
|
||||
}
|
|
@ -0,0 +1,284 @@
|
|||
# when updating this patch just create it from scratch using this command
|
||||
#
|
||||
# find . -name "*.go" -print | xargs sed -i 's/\/etc\/docker/\/storage\/.kodi\/userdata\/addon_data\/service.system.docker\/config/g'
|
||||
#
|
||||
#
|
||||
diff -Naur a/cmd/dockerd/daemon_unix.go b/cmd/dockerd/daemon_unix.go
|
||||
--- a/cmd/dockerd/daemon_unix.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/cmd/dockerd/daemon_unix.go 2022-06-07 14:28:05.510327911 -0700
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
func getDefaultDaemonConfigDir() (string, error) {
|
||||
if !honorXDG {
|
||||
- return "/etc/docker", nil
|
||||
+ return "/storage/.kodi/userdata/addon_data/service.system.docker/config", nil
|
||||
}
|
||||
// NOTE: CLI uses ~/.docker while the daemon uses ~/.config/docker, because
|
||||
// ~/.docker was not designed to store daemon configurations.
|
||||
diff -Naur a/integration/plugin/authz/authz_plugin_test.go b/integration/plugin/authz/authz_plugin_test.go
|
||||
--- a/integration/plugin/authz/authz_plugin_test.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/integration/plugin/authz/authz_plugin_test.go 2022-06-07 14:28:05.570328822 -0700
|
||||
@@ -56,15 +56,15 @@
|
||||
ctrl = &authorizationController{}
|
||||
teardown := setupTest(t)
|
||||
|
||||
- err := os.MkdirAll("/etc/docker/plugins", 0755)
|
||||
+ err := os.MkdirAll("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins", 0755)
|
||||
assert.NilError(t, err)
|
||||
|
||||
- fileName := fmt.Sprintf("/etc/docker/plugins/%s.spec", testAuthZPlugin)
|
||||
+ fileName := fmt.Sprintf("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins/%s.spec", testAuthZPlugin)
|
||||
err = os.WriteFile(fileName, []byte(server.URL), 0644)
|
||||
assert.NilError(t, err)
|
||||
|
||||
return func() {
|
||||
- err := os.RemoveAll("/etc/docker/plugins")
|
||||
+ err := os.RemoveAll("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins")
|
||||
assert.NilError(t, err)
|
||||
|
||||
teardown()
|
||||
diff -Naur a/integration/plugin/graphdriver/external_test.go b/integration/plugin/graphdriver/external_test.go
|
||||
--- a/integration/plugin/graphdriver/external_test.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/integration/plugin/graphdriver/external_test.go 2022-06-07 14:28:05.570328822 -0700
|
||||
@@ -80,7 +80,7 @@
|
||||
|
||||
sserver.Close()
|
||||
jserver.Close()
|
||||
- err := os.RemoveAll("/etc/docker/plugins")
|
||||
+ err := os.RemoveAll("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins")
|
||||
assert.NilError(t, err)
|
||||
}
|
||||
|
||||
@@ -345,10 +345,10 @@
|
||||
respond(w, &graphDriverResponse{Size: size})
|
||||
})
|
||||
|
||||
- err = os.MkdirAll("/etc/docker/plugins", 0755)
|
||||
+ err = os.MkdirAll("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins", 0755)
|
||||
assert.NilError(t, err)
|
||||
|
||||
- specFile := "/etc/docker/plugins/" + name + "." + ext
|
||||
+ specFile := "/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins/" + name + "." + ext
|
||||
err = os.WriteFile(specFile, b, 0644)
|
||||
assert.NilError(t, err)
|
||||
}
|
||||
diff -Naur a/integration-cli/docker_cli_daemon_test.go b/integration-cli/docker_cli_daemon_test.go
|
||||
--- a/integration-cli/docker_cli_daemon_test.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/integration-cli/docker_cli_daemon_test.go 2022-06-07 14:28:05.556328610 -0700
|
||||
@@ -558,12 +558,12 @@
|
||||
|
||||
func (s *DockerDaemonSuite) TestDaemonKeyGeneration(c *testing.T) {
|
||||
// TODO: skip or update for Windows daemon
|
||||
- os.Remove("/etc/docker/key.json")
|
||||
+ os.Remove("/storage/.kodi/userdata/addon_data/service.system.docker/config/key.json")
|
||||
c.Setenv("DOCKER_ALLOW_SCHEMA1_PUSH_DONOTUSE", "1")
|
||||
s.d.Start(c)
|
||||
s.d.Stop(c)
|
||||
|
||||
- k, err := libtrust.LoadKeyFile("/etc/docker/key.json")
|
||||
+ k, err := libtrust.LoadKeyFile("/storage/.kodi/userdata/addon_data/service.system.docker/config/key.json")
|
||||
if err != nil {
|
||||
c.Fatalf("Error opening key file")
|
||||
}
|
||||
@@ -1212,13 +1212,13 @@
|
||||
Y string `json:"y"`
|
||||
}
|
||||
|
||||
- os.Remove("/etc/docker/key.json")
|
||||
+ os.Remove("/storage/.kodi/userdata/addon_data/service.system.docker/config/key.json")
|
||||
c.Setenv("DOCKER_ALLOW_SCHEMA1_PUSH_DONOTUSE", "1")
|
||||
s.d.Start(c)
|
||||
s.d.Stop(c)
|
||||
|
||||
config := &Config{}
|
||||
- bytes, err := os.ReadFile("/etc/docker/key.json")
|
||||
+ bytes, err := os.ReadFile("/storage/.kodi/userdata/addon_data/service.system.docker/config/key.json")
|
||||
if err != nil {
|
||||
c.Fatalf("Error reading key.json file: %s", err)
|
||||
}
|
||||
@@ -1238,11 +1238,11 @@
|
||||
}
|
||||
|
||||
// write back
|
||||
- if err := os.WriteFile("/etc/docker/key.json", newBytes, 0400); err != nil {
|
||||
+ if err := os.WriteFile("/storage/.kodi/userdata/addon_data/service.system.docker/config/key.json", newBytes, 0400); err != nil {
|
||||
c.Fatalf("Error os.WriteFile: %s", err)
|
||||
}
|
||||
|
||||
- defer os.Remove("/etc/docker/key.json")
|
||||
+ defer os.Remove("/storage/.kodi/userdata/addon_data/service.system.docker/config/key.json")
|
||||
|
||||
if err := s.d.StartWithError(); err == nil {
|
||||
c.Fatalf("It should not be successful to start daemon with wrong key: %v", err)
|
||||
diff -Naur a/integration-cli/docker_cli_external_volume_driver_test.go b/integration-cli/docker_cli_external_volume_driver_test.go
|
||||
--- a/integration-cli/docker_cli_external_volume_driver_test.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/integration-cli/docker_cli_external_volume_driver_test.go 2022-06-07 14:28:05.556328610 -0700
|
||||
@@ -258,10 +258,10 @@
|
||||
send(w, `{"Capabilities": { "Scope": "global" }}`)
|
||||
})
|
||||
|
||||
- err := os.MkdirAll("/etc/docker/plugins", 0755)
|
||||
+ err := os.MkdirAll("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins", 0755)
|
||||
assert.NilError(c, err)
|
||||
|
||||
- err = os.WriteFile("/etc/docker/plugins/"+name+".spec", []byte(s.Server.URL), 0644)
|
||||
+ err = os.WriteFile("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins/"+name+".spec", []byte(s.Server.URL), 0644)
|
||||
assert.NilError(c, err)
|
||||
return s
|
||||
}
|
||||
@@ -269,7 +269,7 @@
|
||||
func (s *DockerExternalVolumeSuite) TearDownSuite(c *testing.T) {
|
||||
s.volumePlugin.Close()
|
||||
|
||||
- err := os.RemoveAll("/etc/docker/plugins")
|
||||
+ err := os.RemoveAll("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins")
|
||||
assert.NilError(c, err)
|
||||
}
|
||||
|
||||
@@ -359,7 +359,7 @@
|
||||
|
||||
// Make sure a request to use a down driver doesn't block other requests
|
||||
func (s *DockerExternalVolumeSuite) TestExternalVolumeDriverLookupNotBlocked(c *testing.T) {
|
||||
- specPath := "/etc/docker/plugins/down-driver.spec"
|
||||
+ specPath := "/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins/down-driver.spec"
|
||||
err := os.WriteFile(specPath, []byte("tcp://127.0.0.7:9999"), 0644)
|
||||
assert.NilError(c, err)
|
||||
defer os.RemoveAll(specPath)
|
||||
diff -Naur a/integration-cli/docker_cli_network_unix_test.go b/integration-cli/docker_cli_network_unix_test.go
|
||||
--- a/integration-cli/docker_cli_network_unix_test.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/integration-cli/docker_cli_network_unix_test.go 2022-06-07 14:28:05.558328640 -0700
|
||||
@@ -196,14 +196,14 @@
|
||||
}
|
||||
})
|
||||
|
||||
- err := os.MkdirAll("/etc/docker/plugins", 0755)
|
||||
+ err := os.MkdirAll("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins", 0755)
|
||||
assert.NilError(c, err)
|
||||
|
||||
- fileName := fmt.Sprintf("/etc/docker/plugins/%s.spec", netDrv)
|
||||
+ fileName := fmt.Sprintf("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins/%s.spec", netDrv)
|
||||
err = os.WriteFile(fileName, []byte(url), 0644)
|
||||
assert.NilError(c, err)
|
||||
|
||||
- ipamFileName := fmt.Sprintf("/etc/docker/plugins/%s.spec", ipamDrv)
|
||||
+ ipamFileName := fmt.Sprintf("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins/%s.spec", ipamDrv)
|
||||
err = os.WriteFile(ipamFileName, []byte(url), 0644)
|
||||
assert.NilError(c, err)
|
||||
}
|
||||
@@ -215,7 +215,7 @@
|
||||
|
||||
s.server.Close()
|
||||
|
||||
- err := os.RemoveAll("/etc/docker/plugins")
|
||||
+ err := os.RemoveAll("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins")
|
||||
assert.NilError(c, err)
|
||||
}
|
||||
|
||||
diff -Naur a/integration-cli/docker_cli_swarm_test.go b/integration-cli/docker_cli_swarm_test.go
|
||||
--- a/integration-cli/docker_cli_swarm_test.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/integration-cli/docker_cli_swarm_test.go 2022-06-07 14:28:05.561328685 -0700
|
||||
@@ -770,14 +770,14 @@
|
||||
}
|
||||
})
|
||||
|
||||
- err := os.MkdirAll("/etc/docker/plugins", 0755)
|
||||
+ err := os.MkdirAll("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins", 0755)
|
||||
assert.NilError(c, err)
|
||||
|
||||
- fileName := fmt.Sprintf("/etc/docker/plugins/%s.spec", netDrv)
|
||||
+ fileName := fmt.Sprintf("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins/%s.spec", netDrv)
|
||||
err = os.WriteFile(fileName, []byte(url), 0644)
|
||||
assert.NilError(c, err)
|
||||
|
||||
- ipamFileName := fmt.Sprintf("/etc/docker/plugins/%s.spec", ipamDrv)
|
||||
+ ipamFileName := fmt.Sprintf("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins/%s.spec", ipamDrv)
|
||||
err = os.WriteFile(ipamFileName, []byte(url), 0644)
|
||||
assert.NilError(c, err)
|
||||
}
|
||||
@@ -789,7 +789,7 @@
|
||||
setupRemoteGlobalNetworkPlugin(c, mux, s.server.URL, globalNetworkPlugin, globalIPAMPlugin)
|
||||
defer func() {
|
||||
s.server.Close()
|
||||
- err := os.RemoveAll("/etc/docker/plugins")
|
||||
+ err := os.RemoveAll("/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins")
|
||||
assert.NilError(c, err)
|
||||
}()
|
||||
|
||||
diff -Naur a/libnetwork/drivers/remote/driver_test.go b/libnetwork/drivers/remote/driver_test.go
|
||||
--- a/libnetwork/drivers/remote/driver_test.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/libnetwork/drivers/remote/driver_test.go 2022-06-07 14:28:05.586329065 -0700
|
||||
@@ -41,7 +41,7 @@
|
||||
}
|
||||
|
||||
func setupPlugin(t *testing.T, name string, mux *http.ServeMux) func() {
|
||||
- specPath := "/etc/docker/plugins"
|
||||
+ specPath := "/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins"
|
||||
if runtime.GOOS == "windows" {
|
||||
specPath = filepath.Join(os.Getenv("programdata"), "docker", "plugins")
|
||||
}
|
||||
diff -Naur a/libnetwork/ipams/remote/remote_test.go b/libnetwork/ipams/remote/remote_test.go
|
||||
--- a/libnetwork/ipams/remote/remote_test.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/libnetwork/ipams/remote/remote_test.go 2022-06-07 14:28:05.591329141 -0700
|
||||
@@ -36,7 +36,7 @@
|
||||
}
|
||||
|
||||
func setupPlugin(t *testing.T, name string, mux *http.ServeMux) func() {
|
||||
- specPath := "/etc/docker/plugins"
|
||||
+ specPath := "/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins"
|
||||
if runtime.GOOS == "windows" {
|
||||
specPath = filepath.Join(os.Getenv("programdata"), "docker", "plugins")
|
||||
}
|
||||
diff -Naur a/libnetwork/libnetwork_unix_test.go b/libnetwork/libnetwork_unix_test.go
|
||||
--- a/libnetwork/libnetwork_unix_test.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/libnetwork/libnetwork_unix_test.go 2022-06-07 14:28:05.592329156 -0700
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
package libnetwork_test
|
||||
|
||||
-var specPath = "/etc/docker/plugins"
|
||||
+var specPath = "/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins"
|
||||
diff -Naur a/pkg/plugins/discovery_unix.go b/pkg/plugins/discovery_unix.go
|
||||
--- a/pkg/plugins/discovery_unix.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/pkg/plugins/discovery_unix.go 2022-06-07 14:28:05.615329505 -0700
|
||||
@@ -3,4 +3,4 @@
|
||||
|
||||
package plugins // import "github.com/docker/docker/pkg/plugins"
|
||||
|
||||
-var specsPaths = []string{"/etc/docker/plugins", "/usr/lib/docker/plugins"}
|
||||
+var specsPaths = []string{"/storage/.kodi/userdata/addon_data/service.system.docker/config/plugins", "/usr/lib/docker/plugins"}
|
||||
diff -Naur a/pkg/plugins/plugins.go b/pkg/plugins/plugins.go
|
||||
--- a/pkg/plugins/plugins.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/pkg/plugins/plugins.go 2022-06-07 14:28:05.616329521 -0700
|
||||
@@ -4,7 +4,7 @@
|
||||
// Docker discovers plugins by looking for them in the plugin directory whenever
|
||||
// a user or container tries to use one by name. UNIX domain socket files must
|
||||
// be located under /run/docker/plugins, whereas spec files can be located
|
||||
-// either under /etc/docker/plugins or /usr/lib/docker/plugins. This is handled
|
||||
+// either under /storage/.kodi/userdata/addon_data/service.system.docker/config/plugins or /usr/lib/docker/plugins. This is handled
|
||||
// by the Registry interface, which lets you list all plugins or get a plugin by
|
||||
// its name if it exists.
|
||||
//
|
||||
diff -Naur a/registry/config_unix.go b/registry/config_unix.go
|
||||
--- a/registry/config_unix.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/registry/config_unix.go 2022-06-07 14:28:05.626329672 -0700
|
||||
@@ -6,7 +6,7 @@
|
||||
// defaultCertsDir is the platform-specific default directory where certificates
|
||||
// are stored. On Linux, it may be overridden through certsDir, for example, when
|
||||
// running in rootless mode.
|
||||
-const defaultCertsDir = "/etc/docker/certs.d"
|
||||
+const defaultCertsDir = "/storage/.kodi/userdata/addon_data/service.system.docker/config/certs.d"
|
||||
|
||||
// cleanPath is used to ensure that a directory name is valid on the target
|
||||
// platform. It will be passed in something *similar* to a URL such as
|
||||
diff -Naur a/registry/endpoint_v1.go b/registry/endpoint_v1.go
|
||||
--- a/registry/endpoint_v1.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/registry/endpoint_v1.go 2022-06-07 14:28:05.627329688 -0700
|
||||
@@ -63,7 +63,7 @@
|
||||
if endpoint.IsSecure {
|
||||
// If registry is secure and HTTPS failed, show user the error and tell them about `--insecure-registry`
|
||||
// in case that's what they need. DO NOT accept unknown CA certificates, and DO NOT fallback to HTTP.
|
||||
- return invalidParamf("invalid registry endpoint %s: %v. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry %s` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/%s/ca.crt", endpoint, err, endpoint.URL.Host, endpoint.URL.Host)
|
||||
+ return invalidParamf("invalid registry endpoint %s: %v. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry %s` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /storage/.kodi/userdata/addon_data/service.system.docker/config/certs.d/%s/ca.crt", endpoint, err, endpoint.URL.Host, endpoint.URL.Host)
|
||||
}
|
||||
|
||||
// If registry is insecure and HTTPS failed, fallback to HTTP.
|
|
@ -0,0 +1,22 @@
|
|||
--- a/daemon/config/config.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/daemon/config/config.go 2022-06-07 14:29:36.755713207 -0700
|
||||
@@ -59,7 +59,7 @@
|
||||
LinuxV2RuntimeName = "io.containerd.runc.v2"
|
||||
|
||||
// SeccompProfileDefault is the built-in default seccomp profile.
|
||||
- SeccompProfileDefault = "builtin"
|
||||
+ SeccompProfileDefault = "unconfined"
|
||||
// SeccompProfileUnconfined is a special profile name for seccomp to use an
|
||||
// "unconfined" seccomp profile.
|
||||
SeccompProfileUnconfined = "unconfined"
|
||||
--- a/daemon/daemon_unix.go 2022-06-03 10:30:24.000000000 -0700
|
||||
+++ b/daemon/daemon_unix.go 2022-06-07 14:34:55.315558083 -0700
|
||||
@@ -1711,8 +1711,6 @@
|
||||
|
||||
func (daemon *Daemon) setupSeccompProfile() error {
|
||||
switch profile := daemon.configStore.SeccompProfile; profile {
|
||||
- case "", config.SeccompProfileDefault:
|
||||
- daemon.seccompProfilePath = config.SeccompProfileDefault
|
||||
case config.SeccompProfileUnconfined:
|
||||
daemon.seccompProfilePath = config.SeccompProfileUnconfined
|
||||
default:
|
34
packages/services/docker/runc/package.mk
Normal file
34
packages/services/docker/runc/package.mk
Normal file
|
@ -0,0 +1,34 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2009-2016 Lukas Rusak (lrusak@libreelec.tv)
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="runc"
|
||||
PKG_VERSION="1.1.4"
|
||||
PKG_SHA256="4f02077432642eebd768fc857318ae7929290b3a3511eb1be338005e360cfa34"
|
||||
PKG_LICENSE="APL"
|
||||
PKG_SITE="https://github.com/opencontainers/runc"
|
||||
PKG_URL="https://github.com/opencontainers/runc/archive/v${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain go:host"
|
||||
PKG_LONGDESC="A CLI tool for spawning and running containers according to the OCI specification."
|
||||
PKG_TOOLCHAIN="manual"
|
||||
|
||||
# Git commit of the matching release https://github.com/opencontainers/runc/releases
|
||||
PKG_GIT_COMMIT="6724737f999df9ee0d8ca5c6d7b81f97adc34374"
|
||||
|
||||
pre_make_target() {
|
||||
go_configure
|
||||
|
||||
export LDFLAGS="-w -extldflags -static -X main.gitCommit=${PKG_GIT_COMMIT} -X main.version=$(cat ./VERSION) -extld ${CC}"
|
||||
|
||||
mkdir -p ${GOPATH}
|
||||
if [ -d ${PKG_BUILD}/vendor ]; then
|
||||
mv ${PKG_BUILD}/vendor ${GOPATH}/src
|
||||
fi
|
||||
|
||||
ln -fs ${PKG_BUILD} ${GOPATH}/src/github.com/opencontainers/runc
|
||||
}
|
||||
|
||||
make_target() {
|
||||
mkdir -p bin
|
||||
${GOLANG} build -v -o bin/runc -a -tags "cgo static_build" -ldflags "${LDFLAGS}" ./
|
||||
}
|
22
packages/services/docker/tini/package.mk
Normal file
22
packages/services/docker/tini/package.mk
Normal file
|
@ -0,0 +1,22 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2009-2016 Lukas Rusak (lrusak@libreelec.tv)
|
||||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="tini"
|
||||
PKG_VERSION="0.19.0"
|
||||
PKG_SHA256="0fd35a7030052acd9f58948d1d900fe1e432ee37103c5561554408bdac6bbf0d"
|
||||
PKG_LICENSE="MIT"
|
||||
PKG_SITE="https://github.com/krallin/tini"
|
||||
PKG_URL="https://github.com/krallin/tini/archive/v${PKG_VERSION}.tar.gz"
|
||||
PKG_DEPENDS_TARGET="toolchain"
|
||||
PKG_LONGDESC="Tini is a simplest init system."
|
||||
|
||||
PKG_MAKE_OPTS_TARGET="tini-static"
|
||||
|
||||
pre_configure_target(){
|
||||
sed -i "s|@tini_VERSION_GIT@| - git.${PKG_VERSION}|" ${PKG_BUILD}/src/tiniConfig.h.in
|
||||
}
|
||||
|
||||
makeinstall_target() {
|
||||
:
|
||||
}
|
|
@ -3,6 +3,7 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv)
|
||||
# Copyright (C) 2018-present Team CoreELEC (https://coreelec.org)
|
||||
# Copyright (C) 2020-present Fewtarius
|
||||
|
||||
if [ -e /storage/.please_resize_me ] ; then
|
||||
. /usr/lib/coreelec/functions
|
||||
|
@ -21,9 +22,14 @@ if [ -e /storage/.please_resize_me ] ; then
|
|||
|
||||
# get the disk. /storage on 2nd partition
|
||||
PART=$(blkid | awk 'BEGIN {FS=":"} /STORAGE/ {print $1}')
|
||||
DISK=$(echo ${PART} | sed s/p[0-9]//g)
|
||||
PARTNUM=$(echo ${PART} | sed "s#^.*[0-9]p##g")
|
||||
|
||||
if [ "$(echo ${PART} | awk '/mmcblk/ {print $1}')" ]
|
||||
then
|
||||
DISK=$(echo ${PART} | sed s/p[0-9]//g)
|
||||
PARTNUM=$(echo ${PART} | sed "s#^.*[0-9]p##g")
|
||||
else
|
||||
DISK=$(echo ${PART} | sed s/[0-9]//g)
|
||||
PARTNUM=$(echo ${PART} | sed "s#^sd[a-z]##g")
|
||||
fi
|
||||
rm -f /storage/.please_resize_me
|
||||
sync
|
||||
|
||||
|
|
|
@ -15,6 +15,6 @@ PKG_CONFIGURE_OPTS_TARGET="--disable-unicode \
|
|||
HTOP_NCURSES_CONFIG_SCRIPT=ncurses6-config"
|
||||
|
||||
pre_configure_target() {
|
||||
export LDFLAGS="${LDFLAGS} -lreadline -lncurses -ltinfo"
|
||||
export LDFLAGS="${LDFLAGS} -lreadline -lncursesw -ltinfow"
|
||||
export CFLAGS="${CFLAGS} -fcommon"
|
||||
}
|
||||
|
|
|
@ -281,9 +281,9 @@ EOF
|
|||
|
||||
cat << EOF > $TMPDIR/part1/EFI/BOOT/grub.cfg
|
||||
set timeout="0"
|
||||
set default="LibreELEC"
|
||||
set default="${DISTRO}"
|
||||
|
||||
menuentry "LibreELEC" {
|
||||
menuentry "${DISTRO}" {
|
||||
search --set -f /KERNEL
|
||||
linux /KERNEL boot=UUID=$UUID_SYSTEM disk=UUID=$UUID_STORAGE quiet
|
||||
}
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="nano"
|
||||
PKG_VERSION="4.3"
|
||||
PKG_SHA256="00d3ad1a287a85b4bf83e5f06cedd0a9f880413682bebd52b4b1e2af8cfc0d81"
|
||||
PKG_VERSION="6.4"
|
||||
PKG_SHA256="4199ae8ca78a7796de56de1a41b821dc47912c0307e9816b56cc317df34661c0"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="http://www.nano-editor.org/"
|
||||
PKG_URL="http://ftpmirror.gnu.org/nano/${PKG_NAME}-${PKG_VERSION}.tar.xz"
|
||||
PKG_SITE="https://www.nano-editor.org/"
|
||||
PKG_URL="https://www.nano-editor.org/dist/v6/${PKG_NAME}-${PKG_VERSION}.tar.xz"
|
||||
PKG_DEPENDS_TARGET="toolchain ncurses"
|
||||
PKG_LONGDESC="Nano is an enhanced clone of the Pico text editor."
|
||||
|
||||
|
@ -22,7 +22,7 @@ post_makeinstall_target() {
|
|||
mkdir -p ${INSTALL}/etc
|
||||
cp -a ${PKG_DIR}/config/* ${INSTALL}/etc/
|
||||
|
||||
mkdir -p ${INSTALL}/usr/share/nano
|
||||
mkdir -p ${INSTALL}/usr/share/nano
|
||||
for FILE_TYPES in \
|
||||
css \
|
||||
html \
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
|
||||
|
||||
PKG_NAME="procps-ng"
|
||||
PKG_VERSION="3.3.15"
|
||||
PKG_SHA256="191391fde24a1d3b9b0030d26f8dfdcbf641d36297aab7ecf2f941c5ca927e21"
|
||||
PKG_VERSION="3.3.17"
|
||||
PKG_SHA256="8374d281f91e5fc9bb9ea8dc991b25331e3a2b0299b46f22c633f7fb6bcb0764"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://gitlab.com/procps-ng/procps"
|
||||
PKG_URL="https://gitlab.com/procps-ng/procps/-/archive/v${PKG_VERSION}/procps-v${PKG_VERSION}.tar.bz2"
|
||||
|
@ -20,12 +20,12 @@ PKG_CONFIGURE_OPTS_TARGET="ac_cv_func_malloc_0_nonnull=yes \
|
|||
|
||||
PKG_MAKE_OPTS_TARGET="free top/top proc/libprocps.la proc/libprocps.pc"
|
||||
|
||||
PKG_MAKEINSTALL_OPTS_TARGET="install-libLTLIBRARIES install-pkgconfigDATA"
|
||||
PKG_MAKEINSTALL_OPTS_TARGET="install-libLTLIBRARIES install-pkgconfigDATA install-proc_libprocps_la_includeHEADERS"
|
||||
|
||||
makeinstall_target() {
|
||||
mkdir -p $INSTALL/usr/bin
|
||||
cp -P $PKG_BUILD/.$TARGET_NAME/free $INSTALL/usr/bin
|
||||
cp -P $PKG_BUILD/.$TARGET_NAME/top/top $INSTALL/usr/bin
|
||||
mkdir -p ${INSTALL}/usr/bin
|
||||
cp -P ${PKG_BUILD}/.${TARGET_NAME}/free ${INSTALL}/usr/bin
|
||||
cp -P ${PKG_BUILD}/.${TARGET_NAME}/top/top ${INSTALL}/usr/bin
|
||||
|
||||
make DESTDIR=$SYSROOT_PREFIX -j1 $PKG_MAKEINSTALL_OPTS_TARGET
|
||||
make DESTDIR=${SYSROOT_PREFIX} -j1 ${PKG_MAKEINSTALL_OPTS_TARGET}
|
||||
}
|
||||
|
|
1
packages/ui/emulationstation/config/device/handheld
Symbolic link
1
packages/ui/emulationstation/config/device/handheld
Symbolic link
|
@ -0,0 +1 @@
|
|||
X86_64
|
|
@ -3,14 +3,14 @@
|
|||
# Copyright (C) 2020-present Fewtarius
|
||||
|
||||
PKG_NAME="emulationstation"
|
||||
PKG_VERSION="d3424c6"
|
||||
PKG_VERSION="222ba00"
|
||||
PKG_GIT_CLONE_BRANCH="main"
|
||||
PKG_REV="1"
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://github.com/JustEnoughLinuxOS/emulationstation"
|
||||
PKG_URL="${PKG_SITE}.git"
|
||||
PKG_DEPENDS_TARGET="boost toolchain SDL2 freetype curl freeimage bash rapidjson SDL2_mixer fping p7zip vlc"
|
||||
PKG_DEPENDS_TARGET="boost toolchain SDL2 freetype curl freeimage bash rapidjson SDL2_mixer fping p7zip alsa vlc"
|
||||
PKG_NEED_UNPACK="busybox"
|
||||
PKG_SHORTDESC="Emulationstation emulator frontend"
|
||||
PKG_BUILD_FLAGS="-gold"
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
PKG_NAME="image"
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://libreelec.tv"
|
||||
PKG_DEPENDS_TARGET="toolchain squashfs-tools:host dosfstools:host fakeroot:host kmod:host mtools:host populatefs:host libc gcc linux linux-drivers linux-firmware ${BOOTLOADER} busybox util-linux corefonts network misc-packages debug usb-modeswitch unzip poppler socat p7zip file bluez splash initramfs jelos"
|
||||
PKG_DEPENDS_TARGET="toolchain squashfs-tools:host dosfstools:host fakeroot:host kmod:host mtools:host populatefs:host libc gcc linux linux-drivers linux-firmware ${BOOTLOADER} busybox util-linux corefonts network misc-packages debug usb-modeswitch unzip poppler jq socat p7zip file bluez splash initramfs jelos"
|
||||
PKG_SECTION="virtual"
|
||||
PKG_LONGDESC="Root package used to build and create complete image"
|
||||
|
||||
|
|
|
@ -1,16 +1,21 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2018 Team LibreELEC (https://libreelec.tv)
|
||||
# Copyright (C) 2018-present Team CoreELEC (https://coreelec.org)
|
||||
# Copyright (C) 2022-present Fewtarius
|
||||
|
||||
PKG_NAME="misc-packages"
|
||||
PKG_VERSION=""
|
||||
PKG_LICENSE="GPL"
|
||||
PKG_SITE="https://libreelec.tv"
|
||||
PKG_SITE="https://www.jelos.org"
|
||||
PKG_URL=""
|
||||
PKG_DEPENDS_TARGET="toolchain Python3 jq ${ADDITIONAL_PACKAGES}"
|
||||
PKG_SECTION="virtual"
|
||||
PKG_LONGDESC="misc-packages: Metapackage for miscellaneous packages"
|
||||
|
||||
if [ ! "${BASE_ONLY}" = "true" ]
|
||||
then
|
||||
PKG_DEPENDS_TARGET+=" ${ADDITIONAL_PACKAGES}"
|
||||
fi
|
||||
|
||||
# Entware support
|
||||
if [ "$ENTWARE_SUPPORT" = "yes" ]; then
|
||||
ln -sf /storage/.opt $INSTALL/opt
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
[core]
|
||||
idle-time=0
|
||||
|
||||
[shell]
|
||||
[terminal]
|
||||
font-size=16
|
||||
|
||||
[shell]
|
||||
background-image=/usr/share/weston/libreelec-wallpaper-2160.png
|
||||
background-type=scale-crop
|
||||
background-color=0x00000000
|
||||
|
@ -11,7 +13,7 @@ locking=false
|
|||
|
||||
[launcher]
|
||||
path=/usr/bin/start_es.sh
|
||||
icon=/usr/config/emulationstation/resources/window_icon_16.png
|
||||
icon=/usr/config/emulationstation/resources/window_icon_24.png
|
||||
|
||||
[launcher]
|
||||
icon=/usr/share/weston/terminal.png
|
||||
|
|
21
packages/wayland/weston/patches/001-terminal.patch
Normal file
21
packages/wayland/weston/patches/001-terminal.patch
Normal file
|
@ -0,0 +1,21 @@
|
|||
diff -rupN weston-10.0.1.orig/clients/terminal.c weston-10.0.1/clients/terminal.c
|
||||
--- weston-10.0.1.orig/clients/terminal.c 2022-06-23 09:52:38.000000000 -0400
|
||||
+++ weston-10.0.1/clients/terminal.c 2022-08-30 17:32:23.295568863 -0400
|
||||
@@ -3089,7 +3089,7 @@ terminal_run(struct terminal *terminal,
|
||||
close(pipes[0]);
|
||||
setenv("TERM", option_term, 1);
|
||||
setenv("COLORTERM", option_term, 1);
|
||||
- if (execl(path, path, NULL)) {
|
||||
+ if (execl(path, path, "-l")) {
|
||||
printf("exec failed: %s\n", strerror(errno));
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
@@ -3140,7 +3140,7 @@ int main(int argc, char *argv[])
|
||||
|
||||
option_shell = getenv("SHELL");
|
||||
if (!option_shell)
|
||||
- option_shell = "/bin/sh";
|
||||
+ option_shell = "/bin/bash";
|
||||
|
||||
config_file = weston_config_get_name_from_env();
|
||||
config = weston_config_parse(config_file);
|
|
@ -1,3 +1,12 @@
|
|||
DEVICE_BRIGHTNESS="100"
|
||||
SPLASH_LOADER="imagemagick"
|
||||
#UI_SERVICE="systemctl start emustation.service"
|
||||
|
||||
# FREQ Governors
|
||||
CPU_FREQ=("/sys/devices/system/cpu/cpufreq/policy0" \
|
||||
"/sys/devices/system/cpu/cpufreq/policy1" \
|
||||
"/sys/devices/system/cpu/cpufreq/policy2" \
|
||||
"/sys/devices/system/cpu/cpufreq/policy3")
|
||||
|
||||
# Affinity
|
||||
SLOW_CORES="taskset -c 0-3"
|
||||
FAST_CORES="${SLOW_CORES}"
|
||||
|
|
|
@ -1,30 +1,113 @@
|
|||
# kernel command line
|
||||
EXTRA_CMDLINE="quiet console=tty0 ssh consoleblank=0 systemd.show_status=0 loglevel=0 panic=20"
|
||||
# kernel command line
|
||||
EXTRA_CMDLINE="quiet console=tty0 ssh consoleblank=0 systemd.show_status=0 loglevel=0 panic=20"
|
||||
|
||||
# Partition label
|
||||
PARTITION_TABLE="msdos"
|
||||
# Partition label
|
||||
PARTITION_TABLE="msdos"
|
||||
|
||||
# OpenGL(X) implementation to use (mesa / no)
|
||||
OPENGL="mesa"
|
||||
# OpenGL(X) implementation to use (mesa / no)
|
||||
OPENGL="mesa"
|
||||
|
||||
# OpenGL-ES implementation to use (mesa / no)
|
||||
OPENGLES="mesa"
|
||||
# OpenGL-ES implementation to use (mesa / no)
|
||||
OPENGLES="mesa"
|
||||
|
||||
# Vulkan implementation to use (vulkan-loader / no)
|
||||
VULKAN="vulkan-loader"
|
||||
# Vulkan implementation to use (vulkan-loader / no)
|
||||
VULKAN="vulkan-loader"
|
||||
|
||||
# VULKAN_SUPPORT
|
||||
VULKAN_SUPPORT="yes"
|
||||
# VULKAN_SUPPORT
|
||||
VULKAN_SUPPORT="yes"
|
||||
|
||||
# Displayserver to use (weston / x11 / no)
|
||||
DISPLAYSERVER="wl"
|
||||
# Displayserver to use (weston / x11 / no)
|
||||
DISPLAYSERVER="wl"
|
||||
|
||||
# Windowmanager to use (fluxbox / weston / no)
|
||||
WINDOWMANAGER="weston"
|
||||
# Windowmanager to use (fluxbox / weston / no)
|
||||
WINDOWMANAGER="weston"
|
||||
|
||||
# Mesa 3D Graphic drivers to use (all / crocus,i915,iris,r300,r600,radeonsi,vmware,virtio)
|
||||
# Space separated list is supported,
|
||||
# e.g. GRAPHIC_DRIVERS="crocus i915 iris r300 r600 radeonsi vmware virtio"
|
||||
GRAPHIC_DRIVERS="crocus i915 iris r300 r600 radeonsi vmware virtio"
|
||||
# Mesa 3D Graphic drivers to use (all / crocus,i915,iris,r300,r600,radeonsi,vmware,virtio)
|
||||
# Space separated list is supported,
|
||||
# e.g. GRAPHIC_DRIVERS="crocus i915 iris r300 r600 radeonsi vmware virtio"
|
||||
GRAPHIC_DRIVERS="crocus i915 iris r300 r600 radeonsi vmware virtio"
|
||||
|
||||
#VAAPI_SUPPORT="yes"
|
||||
# additional packages to install
|
||||
# ADDITIONAL_PACKAGES=""
|
||||
|
||||
# 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" #rockchip-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=""
|
||||
|
||||
# build and install driver addons (yes / no)
|
||||
DRIVER_ADDONS_SUPPORT="no"
|
||||
|
||||
# driver addons to install:
|
||||
# for a list of additinoal drivers see packages/linux-driver-addons
|
||||
# Space separated list is supported,
|
||||
DRIVER_ADDONS=""
|
||||
|
||||
# debug tty path
|
||||
DEBUG_TTY="/dev/ttyFIQ0"
|
||||
|
||||
# build and install PulseAudio support (yes / no)
|
||||
PULSEAUDIO_SUPPORT="yes"
|
||||
|
||||
# build and install bluetooth support (yes / no)
|
||||
BLUETOOTH_SUPPORT="no"
|
||||
|
||||
# build and install Avahi (Zeroconf) daemon (yes / no)
|
||||
AVAHI_DAEMON="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="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="yes"
|
||||
|
||||
# build with swap support (yes / no)
|
||||
SWAP_SUPPORT="yes"
|
||||
|
||||
# swap support enabled per default (yes / no)
|
||||
SWAP_ENABLED_DEFAULT="yes"
|
||||
|
||||
# swapfile size if SWAP_SUPPORT=yes in MB
|
||||
SWAPFILESIZE="1024"
|
||||
|
||||
# cron support (yes / no)
|
||||
CRON_SUPPORT="no"
|
||||
|
||||
# Settings package name - blank if not required
|
||||
DISTRO_PKG_SETTINGS=""
|
||||
|
||||
# htop tool (yes / no)
|
||||
HTOP_TOOL="yes"
|
||||
|
|
16
projects/PC/devices/handheld/device.config
Normal file
16
projects/PC/devices/handheld/device.config
Normal file
|
@ -0,0 +1,16 @@
|
|||
DEVICE_VOLUMECTL=true
|
||||
DEVICE_AUDIO_MIXER="Playback"
|
||||
DEVICE_VOLUME_DEV="/dev/event4"
|
||||
|
||||
DEVICE_BRIGHTNESS="100"
|
||||
SPLASH_LOADER="imagemagick"
|
||||
|
||||
# FREQ Governors
|
||||
CPU_FREQ=("/sys/devices/system/cpu/cpufreq/policy0" \
|
||||
"/sys/devices/system/cpu/cpufreq/policy1" \
|
||||
"/sys/devices/system/cpu/cpufreq/policy2" \
|
||||
"/sys/devices/system/cpu/cpufreq/policy3")
|
||||
|
||||
# Affinity
|
||||
SLOW_CORES="taskset -c 0-3"
|
||||
FAST_CORES="${SLOW_CORES}"
|
0
projects/PC/devices/handheld/device.init
Normal file
0
projects/PC/devices/handheld/device.init
Normal file
6974
projects/PC/devices/handheld/linux/linux.x86_64.conf
Normal file
6974
projects/PC/devices/handheld/linux/linux.x86_64.conf
Normal file
File diff suppressed because it is too large
Load diff
113
projects/PC/devices/handheld/options
Normal file
113
projects/PC/devices/handheld/options
Normal file
|
@ -0,0 +1,113 @@
|
|||
# kernel command line
|
||||
EXTRA_CMDLINE="quiet console=tty0 ssh consoleblank=0 systemd.show_status=0 loglevel=0 panic=20"
|
||||
|
||||
# Partition label
|
||||
PARTITION_TABLE="msdos"
|
||||
|
||||
# OpenGL(X) implementation to use (mesa / no)
|
||||
OPENGL="mesa"
|
||||
|
||||
# OpenGL-ES implementation to use (mesa / no)
|
||||
OPENGLES="mesa"
|
||||
|
||||
# Vulkan implementation to use (vulkan-loader / no)
|
||||
VULKAN="vulkan-loader"
|
||||
|
||||
# VULKAN_SUPPORT
|
||||
VULKAN_SUPPORT="yes"
|
||||
|
||||
# Displayserver to use (weston / x11 / no)
|
||||
DISPLAYSERVER="wl"
|
||||
|
||||
# Windowmanager to use (fluxbox / weston / no)
|
||||
WINDOWMANAGER="weston"
|
||||
|
||||
# Mesa 3D Graphic drivers to use (all / crocus,i915,iris,r300,r600,radeonsi,vmware,virtio)
|
||||
# Space separated list is supported,
|
||||
# e.g. GRAPHIC_DRIVERS="crocus i915 iris r300 r600 radeonsi vmware virtio"
|
||||
GRAPHIC_DRIVERS="crocus i915 iris r300 r600 radeonsi vmware virtio"
|
||||
|
||||
# additional packages to install
|
||||
ADDITIONAL_PACKAGES=" emulators gamesupport 351files"
|
||||
|
||||
# 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" #rockchip-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=""
|
||||
|
||||
# build and install driver addons (yes / no)
|
||||
DRIVER_ADDONS_SUPPORT="no"
|
||||
|
||||
# driver addons to install:
|
||||
# for a list of additinoal drivers see packages/linux-driver-addons
|
||||
# Space separated list is supported,
|
||||
DRIVER_ADDONS=""
|
||||
|
||||
# debug tty path
|
||||
DEBUG_TTY="/dev/ttyFIQ0"
|
||||
|
||||
# build and install PulseAudio support (yes / no)
|
||||
PULSEAUDIO_SUPPORT="yes"
|
||||
|
||||
# build and install bluetooth support (yes / no)
|
||||
BLUETOOTH_SUPPORT="no"
|
||||
|
||||
# build and install Avahi (Zeroconf) daemon (yes / no)
|
||||
AVAHI_DAEMON="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="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="yes"
|
||||
|
||||
# build with swap support (yes / no)
|
||||
SWAP_SUPPORT="yes"
|
||||
|
||||
# swap support enabled per default (yes / no)
|
||||
SWAP_ENABLED_DEFAULT="yes"
|
||||
|
||||
# swapfile size if SWAP_SUPPORT=yes in MB
|
||||
SWAPFILESIZE="1024"
|
||||
|
||||
# cron support (yes / no)
|
||||
CRON_SUPPORT="no"
|
||||
|
||||
# Settings package name - blank if not required
|
||||
DISTRO_PKG_SETTINGS=""
|
||||
|
||||
# htop tool (yes / no)
|
||||
HTOP_TOOL="yes"
|
19
projects/PC/packages/sleep/package.mk
Normal file
19
projects/PC/packages/sleep/package.mk
Normal file
|
@ -0,0 +1,19 @@
|
|||
PKG_NAME="sleep"
|
||||
PKG_VERSION=""
|
||||
PKG_SHA256=""
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="OSS"
|
||||
PKG_DEPENDS_TARGET="systemd"
|
||||
PKG_SITE=""
|
||||
PKG_URL=""
|
||||
PKG_LONGDESC="Sleep configuration"
|
||||
PKG_TOOLCHAIN="manual"
|
||||
|
||||
makeinstall_target() {
|
||||
mkdir -p $INSTALL/usr/config/sleep.conf.d
|
||||
cp sleep.conf $INSTALL/usr/config/sleep.conf.d/sleep.conf
|
||||
|
||||
mkdir -p $INSTALL/usr/lib/systemd/system-sleep/
|
||||
cp sleep.sh $INSTALL/usr/lib/systemd/system-sleep/sleep
|
||||
chmod +x $INSTALL/usr/lib/systemd/system-sleep/sleep
|
||||
}
|
25
projects/PC/packages/sleep/sources/sleep.conf
Normal file
25
projects/PC/packages/sleep/sources/sleep.conf
Normal file
|
@ -0,0 +1,25 @@
|
|||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it
|
||||
# under the terms of the GNU Lesser General Public License as published by
|
||||
# the Free Software Foundation; either version 2.1 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# Entries in this file show the compile time defaults.
|
||||
# You can change settings by editing this file.
|
||||
# Defaults can be restored by simply deleting this file.
|
||||
#
|
||||
# See systemd-sleep.conf(5) for details
|
||||
|
||||
[Sleep]
|
||||
AllowSuspend=yes
|
||||
#AllowHibernation=yes
|
||||
#AllowSuspendThenHibernate=yes
|
||||
#AllowHybridSleep=yes
|
||||
#SuspendMode=suspend
|
||||
SuspendState=mem standby freeze
|
||||
#HibernateMode=platform shutdown
|
||||
#HibernateState=disk
|
||||
#HybridSleepMode=suspend platform shutdown
|
||||
#HybridSleepState=disk
|
||||
#HibernateDelaySec=180min
|
49
projects/PC/packages/sleep/sources/sleep.sh
Executable file
49
projects/PC/packages/sleep/sources/sleep.sh
Executable file
|
@ -0,0 +1,49 @@
|
|||
#!/bin/bash
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
|
||||
|
||||
. /etc/profile
|
||||
|
||||
case $1 in
|
||||
pre)
|
||||
|
||||
if [ "${DEVICE_FAKE_JACKSENSE}" == "true" ]
|
||||
then
|
||||
nohup systemctl stop headphones &
|
||||
fi
|
||||
|
||||
if [ "${DEVICE_VOLUMECTL}" == "true" ]
|
||||
then
|
||||
nohup systemctl stop volume &
|
||||
fi
|
||||
|
||||
alsactl store -f /storage/.config/asound.state
|
||||
|
||||
touch /run/.last_sleep_time
|
||||
|
||||
;;
|
||||
post)
|
||||
alsactl restore -f /storage/.config/asound.state
|
||||
|
||||
if [ "${DEVICE_FAKE_JACKSENSE}" == "true" ]
|
||||
then
|
||||
nohup systemctl start headphones &
|
||||
fi
|
||||
|
||||
if [ "${DEVICE_VOLUMECTL}" == "true" ]
|
||||
then
|
||||
nohup systemctl start volume &
|
||||
fi
|
||||
|
||||
if [ "$(get_setting wifi.enabled)" == "1" ]
|
||||
then
|
||||
nohup wifictl reconnect &
|
||||
fi
|
||||
|
||||
DEVICE_VOLUME=$(get_setting "audio.volume" 2>/dev/null)
|
||||
amixer set "${DEVICE_AUDIO_MIXER}" ${DEVICE_VOLUME}% 2>&1 >/dev/null
|
||||
|
||||
### Call the brightness script to set to the last saved value.
|
||||
/usr/lib/autostart/common/006-brightness
|
||||
;;
|
||||
esac
|
29
projects/PC/packages/system-utils/package.mk
Normal file
29
projects/PC/packages/system-utils/package.mk
Normal file
|
@ -0,0 +1,29 @@
|
|||
# Copyright (C) 2021-present Fewtarius
|
||||
|
||||
PKG_NAME="system-utils"
|
||||
PKG_VERSION=""
|
||||
PKG_SHA256=""
|
||||
PKG_ARCH="any"
|
||||
PKG_LICENSE="mix"
|
||||
PKG_DEPENDS_TARGET="toolchain sleep"
|
||||
PKG_SITE=""
|
||||
PKG_URL=""
|
||||
PKG_LONGDESC="Support scripts for Generic devices"
|
||||
PKG_TOOLCHAIN="manual"
|
||||
|
||||
makeinstall_target() {
|
||||
|
||||
mkdir -p ${INSTALL}/usr/lib/autostart/common
|
||||
cp ${PKG_DIR}/sources/autostart/common/* ${INSTALL}/usr/lib/autostart/common
|
||||
|
||||
mkdir -p ${INSTALL}/usr/bin
|
||||
#cp ${PKG_DIR}/sources/scripts/fancontrol ${INSTALL}/usr/bin
|
||||
cp ${PKG_DIR}/sources/scripts/headphone_sense ${INSTALL}/usr/bin
|
||||
cp ${PKG_DIR}/sources/scripts/system_utils ${INSTALL}/usr/bin
|
||||
cp ${PKG_DIR}/sources/scripts/volume_sense ${INSTALL}/usr/bin
|
||||
cp ${PKG_DIR}/sources/scripts/internalwifi ${INSTALL}/usr/bin
|
||||
chmod 0755 ${INSTALL}/usr/bin/*
|
||||
|
||||
#mkdir -p ${INSTALL}/usr/config
|
||||
#cp ${PKG_DIR}/sources/config/fancontrol.conf ${INSTALL}/usr/config/fancontrol.conf.sample
|
||||
}
|
33
projects/PC/packages/system-utils/sources/autostart/common/008-deviceutils
Executable file
33
projects/PC/packages/system-utils/sources/autostart/common/008-deviceutils
Executable file
|
@ -0,0 +1,33 @@
|
|||
#!/bin/bash
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
|
||||
|
||||
. /etc/profile
|
||||
|
||||
if [ "${DEVICE_HAS_FAN}" == "true" ]
|
||||
then
|
||||
nohup systemctl start fancontrol &
|
||||
else
|
||||
nohup systemctl stop fancontrol &
|
||||
fi
|
||||
|
||||
if [ "${DEVICE_POWER_LED}" == "true" ]
|
||||
then
|
||||
nohup systemctl start battery &
|
||||
else
|
||||
nohup systemctl stop battery &
|
||||
fi
|
||||
|
||||
if [ "${DEVICE_FAKE_JACKSENSE}" == "true" ]
|
||||
then
|
||||
nohup systemctl start headphones &
|
||||
else
|
||||
nohup systemctl stop headphones &
|
||||
fi
|
||||
|
||||
if [ "${DEVICE_VOLUMECTL}" == "true" ]
|
||||
then
|
||||
nohup systemctl start volume &
|
||||
else
|
||||
nohup systemctl stop volume &
|
||||
fi
|
|
@ -0,0 +1,22 @@
|
|||
# To enable custom fan control, set the cooling profile to custom, or run
|
||||
# set_setting cooling.profile custom
|
||||
#
|
||||
# Set to true or export it as a variable if you want debug output.
|
||||
# To test:
|
||||
#
|
||||
# systemctl stop fancontrol
|
||||
# /usr/bin/fancontrol
|
||||
#
|
||||
# To re-enable:
|
||||
#
|
||||
# systemctl start fancontrol
|
||||
|
||||
# Disable debugging by default
|
||||
DEBUG=false
|
||||
|
||||
## Fan speeds range from off (0) to full (255).
|
||||
## Define a speed for each temperature that you define. Order matters.
|
||||
SPEEDS=(255 127 85 0)
|
||||
|
||||
## Temperatures, 75000=75C. Map each to a speed above.
|
||||
TEMPS=(75000 65000 55000 0)
|
64
projects/PC/packages/system-utils/sources/scripts/fancontrol
Executable file
64
projects/PC/packages/system-utils/sources/scripts/fancontrol
Executable file
|
@ -0,0 +1,64 @@
|
|||
#!/bin/bash
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
|
||||
|
||||
. /etc/profile
|
||||
|
||||
DEBUG=false
|
||||
COOLING_PROFILE=$(get_setting "cooling.profile")
|
||||
FAN_PWM="${DEVICE_PWM_FAN}"
|
||||
|
||||
$DEBUG && echo "Setting profile to ${COOLING_PROFILE}"
|
||||
|
||||
if [ -e "/storage/.config/fancontrol.conf" ] && [ "${COOLING_PROFILE}" = "custom" ]
|
||||
then
|
||||
$DEBUG && echo "Loading configuration file" 2>/dev/null
|
||||
source /storage/.config/fancontrol.conf
|
||||
if [ ! $? = 0 ]
|
||||
then
|
||||
WARN="Custom fan profile could not be loaded, defaulting to quiet."
|
||||
$DEBUG && echo "${WARN}"
|
||||
logger -t fancontrol "${WARN}"
|
||||
COOLING_PROFILE="quiet"
|
||||
set_setting cooling.profile quiet
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
if [ ! "${COOLING_PROFILE}" = "custom" ]
|
||||
then
|
||||
if [ "${COOLING_PROFILE}" = "aggressive" ]
|
||||
then
|
||||
SPEEDS=(255 225 195)
|
||||
TEMPS=(55000 45000 0)
|
||||
elif [ "${COOLING_PROFILE}" = "moderate" ]
|
||||
then
|
||||
SPEEDS=(255 190 125 85)
|
||||
TEMPS=(65000 55000 45000 0)
|
||||
else
|
||||
# Quiet.
|
||||
SPEEDS=(255 127 85 0)
|
||||
TEMPS=(75000 65000 55000 0)
|
||||
fi
|
||||
fi
|
||||
|
||||
while true
|
||||
do
|
||||
INDEX=0
|
||||
CPU_TEMP=$(printf "%.0f" $(cat /sys/devices/virtual/thermal/thermal_zone*/temp | awk '{ total += $1; count++ } END { print total/count }'))
|
||||
$DEBUG && echo "CPU TEMP: ${CPU_TEMP}" 2>/dev/null
|
||||
for TEMP in "${TEMPS[@]}"
|
||||
do
|
||||
$DEBUG && echo "INDEX: ${INDEX}" 2>/dev/null
|
||||
$DEBUG && echo "CHK: ${TEMP}" 2>/dev/null
|
||||
if (( "${CPU_TEMP}" > "${TEMP}" ))
|
||||
then
|
||||
$DEBUG && echo "Setting PWM FAN to ${SPEEDS[${INDEX}]} (${TEMP})" 2>/dev/null
|
||||
echo ${SPEEDS[${INDEX}]} >${FAN_PWM}
|
||||
break
|
||||
fi
|
||||
INDEX=$(( $INDEX + 1 ))
|
||||
done
|
||||
sleep 2
|
||||
$DEBUG && echo "Loop" 2>/dev/null
|
||||
done
|
35
projects/PC/packages/system-utils/sources/scripts/headphone_sense
Executable file
35
projects/PC/packages/system-utils/sources/scripts/headphone_sense
Executable file
|
@ -0,0 +1,35 @@
|
|||
#!/bin/bash
|
||||
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2020-present Shanti Gilbert (https://github.com/shantigilbert)
|
||||
|
||||
# Source predefined functions and variables
|
||||
. /etc/profile
|
||||
|
||||
# Switch to headphones if we have them already connected at boot
|
||||
GPIO=$(cat /sys/class/gpio/gpio${DEVICE_JACK}/value)
|
||||
[[ "$GPIO" == "0" ]] && set_setting "audio.device" "headphone" || set_setting "audio.device" "speakers"
|
||||
|
||||
if [ -e "/storage/.config/system/configs/system.cfg" ]; then
|
||||
/usr/bin/system_utils setaudio $(get_setting "audio.device")
|
||||
/usr/bin/system_utils vol $(get_setting "audio.volume")
|
||||
fi
|
||||
|
||||
# Headphone sensing
|
||||
DEVICE="${DEVICE_HEADPHONE_DEV}"
|
||||
|
||||
HP_ON='*(SW_HEADPHONE_INSERT), value 0*'
|
||||
HP_OFF='*(SW_HEADPHONE_INSERT), value 1*'
|
||||
|
||||
evtest "${DEVICE}" | while read line; do
|
||||
case $line in
|
||||
(${HP_ON})
|
||||
amixer cset name='Playback Path' HP
|
||||
set_setting "audio.device" "headphone"
|
||||
;;
|
||||
(${HP_OFF})
|
||||
amixer cset name='Playback Path' SPK
|
||||
set_setting "audio.device" "speakers"
|
||||
;;
|
||||
esac
|
||||
done
|
27
projects/PC/packages/system-utils/sources/scripts/internalwifi
Executable file
27
projects/PC/packages/system-utils/sources/scripts/internalwifi
Executable file
|
@ -0,0 +1,27 @@
|
|||
#!/bin/bash
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
|
||||
|
||||
. /etc/profile
|
||||
|
||||
if [ -z "${DEVICE_INTERNAL_WIFI}" ] || [ "${DEVICE_INTERNAL_WIFI}" = false ]
|
||||
then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
case $1 in
|
||||
disable)
|
||||
connmanctl disable wifi
|
||||
rmmod ${DEVICE_WIFI_MODULE}
|
||||
echo 0 >/sys/class/gpio/gpio${DEVICE_WIFI}/value
|
||||
set_setting internal.wifi 0
|
||||
;;
|
||||
enable)
|
||||
echo 1 >/sys/class/gpio/gpio${DEVICE_WIFI}/value
|
||||
modprobe ${DEVICE_WIFI_MODULE}
|
||||
connmanctl enable wifi
|
||||
set_setting internal.wifi 1
|
||||
;;
|
||||
esac
|
||||
|
||||
systemctl restart connman
|
86
projects/PC/packages/system-utils/sources/scripts/system_utils
Executable file
86
projects/PC/packages/system-utils/sources/scripts/system_utils
Executable file
|
@ -0,0 +1,86 @@
|
|||
#!/bin/bash
|
||||
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2020-present Shanti Gilbert (https://github.com/shantigilbert)
|
||||
|
||||
# THESE NEEDS TO BE CLEANED UP, MAYBE WITH CASE OR FUNCTIONS
|
||||
|
||||
# Source predefined functions and variables
|
||||
. /etc/profile
|
||||
|
||||
if [ "${1}" == "toggleaudio" ];then
|
||||
# Toggle audio output
|
||||
CURRENTAUDIO=$(get_setting "audio.device")
|
||||
case "${CURRENTAUDIO}" in
|
||||
"headphone")
|
||||
echo "setting speakers"
|
||||
amixer cset name='Playback Path' SPK
|
||||
set_setting "audio.device" "speakers"
|
||||
;;
|
||||
"auto"|"speakers"|*)
|
||||
echo "setting headphones"
|
||||
amixer cset name='Playback Path' HP
|
||||
set_setting "audio.device" "headphone"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if [ "${1}" == "setaudio" ];then
|
||||
# Set audio output second parameter is either headphones or speakers
|
||||
case "${2}" in
|
||||
"headphone")
|
||||
echo "setting headphones"
|
||||
amixer cset name='Playback Path' HP
|
||||
set_setting "audio.device" "headphone"
|
||||
;;
|
||||
"auto"|"speakers"|*)
|
||||
echo "setting speakers"
|
||||
amixer cset name='Playback Path' SPK
|
||||
set_setting "audio.device" "speakers"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if [ "${1}" == "vol" ];then
|
||||
VOLSTEP=1
|
||||
if [ -n "${3}" ]; then
|
||||
VOLSTEP="${3}"
|
||||
fi
|
||||
|
||||
CURRENTVOL=$(get_setting "audio.volume")
|
||||
MAXVOL=100
|
||||
MINVOL=0
|
||||
if [ "${2}" == "+" ]; then
|
||||
STEPVOL=$(($CURRENTVOL+$VOLSTEP))
|
||||
elif [ "${2}" == "-" ]; then
|
||||
STEPVOL=$(($CURRENTVOL-$VOLSTEP))
|
||||
else
|
||||
STEPVOL=${2}
|
||||
fi
|
||||
[ "$STEPVOL" -ge "$MAXVOL" ] && STEPVOL="$MAXVOL"
|
||||
[ "$STEPVOL" -le "$MINVOL" ] && STEPVOL="$MINVOL"
|
||||
amixer set "${DEVICE_AUDIO_MIXER}" ${STEPVOL}%
|
||||
alsactl store -f /storage/.config/asound.state
|
||||
set_setting "audio.volume" ${STEPVOL}
|
||||
fi
|
||||
|
||||
if [ "${1}" == "bright" ]; then
|
||||
STEPS="5"
|
||||
CURRENTBRIGHT=$(cat /sys/class/backlight/backlight/brightness)
|
||||
MAXBRIGHT="100" #$(cat /sys/class/backlight/backlight/max_brightness)
|
||||
MINBRIGHT="2"
|
||||
if [ "${2}" == "+" ]; then
|
||||
STEPBRIGHT=$(($CURRENTBRIGHT+$STEPS))
|
||||
elif [ "${2}" == "-" ]; then
|
||||
STEPBRIGHT=$(($CURRENTBRIGHT-$STEPS))
|
||||
else
|
||||
STEPBRIGHT=${2}
|
||||
fi
|
||||
[ "$STEPBRIGHT" -ge "$MAXBRIGHT" ] && STEPBRIGHT="$MAXBRIGHT"
|
||||
[ "$STEPBRIGHT" -le "$MINBRIGHT" ] && STEPBRIGHT="$MINBRIGHT"
|
||||
#echo "Setting bright to $STEPBRIGHT"
|
||||
echo "${STEPBRIGHT}" > /sys/class/backlight/backlight/brightness
|
||||
set_setting "system.brightness" $(cat /sys/class/backlight/backlight/brightness)
|
||||
fi
|
||||
|
||||
|
138
projects/PC/packages/system-utils/sources/scripts/volume_sense
Executable file
138
projects/PC/packages/system-utils/sources/scripts/volume_sense
Executable file
|
@ -0,0 +1,138 @@
|
|||
#!/bin/bash
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
# Copyright (C) 2021-present Fewtarius
|
||||
# 2021-present pkegg
|
||||
|
||||
. /etc/profile
|
||||
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
### Summary
|
||||
# This script listens to volume keys on the RG351MP and adjusts volume
|
||||
# Fn + Volume up/down will adjust brightness
|
||||
###
|
||||
|
||||
|
||||
# Event examples for reference
|
||||
# type 1 (EV_KEY), code 114 (KEY_VOLUMEDOWN), value 1
|
||||
# type 1 (EV_KEY), code 115 (KEY_VOLUMEUP), value 1
|
||||
|
||||
DEVICE="${DEVICE_VOLUME_DEV}" # Device for volume key events
|
||||
|
||||
CONTROLLER_DEVICE="${DEVICE_CONTROLLER_DEV}" # Joystick events (for Fn key)
|
||||
|
||||
VOL_EVENT='*(KEY_VOLUME*, value *' # This matches all volume events
|
||||
|
||||
VOL_UP='*UP), value *' # Differentiate 'up' volume event
|
||||
VOL_DOWN='*DOWN), value *' #Differentiate 'down' volume event
|
||||
|
||||
V_FUNC_KEY_EVENT='*('${DEVICE_VOL_MODIFIER}'), value *'
|
||||
|
||||
# Matches if a button was pressed (1), released (0) or held down (2)
|
||||
PRESS='*value 1'
|
||||
RELEASE='*value 0'
|
||||
REPEAT_PRESS="* value 2"
|
||||
|
||||
# Volume repeat
|
||||
VOLUME_REPEAT_MOD=4
|
||||
|
||||
# Brightness repeat
|
||||
BRIGHTNESS_REPEAT_MOD=4
|
||||
|
||||
# Variable to keep track of Fn being currently pressed
|
||||
FUNC_PRESSED=no
|
||||
|
||||
CONTROLLER_DISCONNECTED="*error reading: No such device"
|
||||
|
||||
# Logic:
|
||||
# - Listen to both:
|
||||
# - 'rg351' events to get volume keys (not part of the joystick api)
|
||||
# - 'joystick' events - as the V's 'fn' key is mapped to the joystick
|
||||
# - Switch statement keeps high level cases to only 'volume' and 'V function key'
|
||||
# this is to avoid processing for other events or creating a lot of cases as this will be called
|
||||
# for all button pushes
|
||||
# - Using 'read' means the loop is idle when no button is pressed
|
||||
|
||||
# Wait for controller in case of restart, etc
|
||||
while true; do
|
||||
sleep 1
|
||||
if [[ ! -e "${CONTROLLER_DEVICE}" ]]; then
|
||||
continue
|
||||
else
|
||||
break
|
||||
fi
|
||||
|
||||
done
|
||||
(
|
||||
evtest "${DEVICE}" &
|
||||
evtest "${CONTROLLER_DEVICE}" 2>&1 &
|
||||
wait
|
||||
) | while read line; do
|
||||
case $line in
|
||||
(${CONTROLLER_DISCONNECTED})
|
||||
echo "Reloading due to controller reattach..."
|
||||
exit 0
|
||||
;;
|
||||
(${VOL_EVENT})
|
||||
|
||||
# We don't care when you 'let go' ('release') the volume button
|
||||
if [[ "$line" == ${RELEASE} ]]; then
|
||||
REPEAT_NUM=0
|
||||
continue
|
||||
fi
|
||||
|
||||
# Setup for 'brightness' if Fn pressed
|
||||
if [[ "${FUNC_PRESSED}" == "yes" ]]; then
|
||||
COMMAND=/usr/bin/brightness
|
||||
UP="up"
|
||||
DOWN="down"
|
||||
REPEAT_MOD=${BRIGHTNESS_REPEAT_MOD}
|
||||
# Default to 'volume' if Fn is not pressed
|
||||
else
|
||||
COMMAND="/usr/bin/system_utils vol"
|
||||
UP="+"
|
||||
DOWN="-"
|
||||
REPEAT_MOD=${VOLUME_REPEAT_MOD}
|
||||
fi
|
||||
|
||||
REPEAT_NUM=$(( ${REPEAT_NUM} + 1 ))
|
||||
|
||||
# This isn't time to evaluate repeat so just skip
|
||||
if [[ "$line" == ${REPEAT_PRESS} && $(( ${REPEAT_NUM} % ${REPEAT_MOD} )) != "0" ]]; then
|
||||
continue
|
||||
fi
|
||||
|
||||
INCREMENT_AMOUNT=1
|
||||
if [[ "${REPEAT_NUM}" -gt "75" ]]; then
|
||||
INCREMENT_AMOUNT=10
|
||||
elif [[ "${REPEAT_NUM}" -gt "25" ]]; then
|
||||
INCREMENT_AMOUNT=5
|
||||
fi
|
||||
# Run the commands to adjust volume/brightness
|
||||
if [[ "${line}" == ${VOL_UP} ]]; then
|
||||
${COMMAND} ${UP} ${INCREMENT_AMOUNT} > /dev/null
|
||||
elif [[ "${line}" == ${VOL_DOWN} ]]; then
|
||||
${COMMAND} ${DOWN} ${INCREMENT_AMOUNT} > /dev/null
|
||||
fi
|
||||
;;
|
||||
|
||||
(${V_FUNC_KEY_EVENT})
|
||||
|
||||
# We don't care about 'Fn' key repeats - continue
|
||||
if [[ "$line" == ${REPEAT_PRESS} ]]; then
|
||||
continue
|
||||
fi
|
||||
|
||||
#Reset the number of repeats when Fn is pressed/release
|
||||
# as repeat speed is different between volume/brightness
|
||||
REPEAT_NUM=0
|
||||
|
||||
if [[ "${line}" == ${PRESS} ]]; then
|
||||
FUNC_PRESSED=yes
|
||||
elif [[ "${line}" == ${RELEASE} ]]; then
|
||||
FUNC_PRESSED=no
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
13
projects/PC/packages/system-utils/system.d/battery.service
Normal file
13
projects/PC/packages/system-utils/system.d/battery.service
Normal file
|
@ -0,0 +1,13 @@
|
|||
[Unit]
|
||||
Description=RG351 Low Power monitor
|
||||
ConditionPathExists=/sys/class/power_supply/battery/capacity
|
||||
Before=jelos.target
|
||||
|
||||
[Service]
|
||||
Environment=HOME=/storage
|
||||
EnvironmentFile=/etc/profile
|
||||
ExecStart=/usr/bin/battery
|
||||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -0,0 +1,13 @@
|
|||
[Unit]
|
||||
Description=Simple Fan Control Service
|
||||
ConditionPathExists=/sys/class/hwmon/hwmon0/pwm1
|
||||
Before=jelos.target
|
||||
|
||||
[Service]
|
||||
Environment=HOME=/storage
|
||||
EnvironmentFile=/etc/profile
|
||||
ExecStart=/usr/bin/fancontrol
|
||||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -0,0 +1,12 @@
|
|||
[Unit]
|
||||
Description=Headphone Sense
|
||||
Before=jelos.target
|
||||
|
||||
[Service]
|
||||
Environment=HOME=/storage
|
||||
EnvironmentFile=/etc/profile
|
||||
ExecStart=/usr/bin/headphone_sense
|
||||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
15
projects/PC/packages/system-utils/system.d/volume.service
Normal file
15
projects/PC/packages/system-utils/system.d/volume.service
Normal file
|
@ -0,0 +1,15 @@
|
|||
[Unit]
|
||||
Description=Volume button service
|
||||
After=headphones.service
|
||||
Before=jelos.target
|
||||
StartLimitIntervalSec=0
|
||||
|
||||
[Service]
|
||||
Environment=HOME=/storage
|
||||
EnvironmentFile=/etc/profile
|
||||
ExecStart=/usr/bin/volume_sense
|
||||
Restart=always
|
||||
RestartSec=1
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -60,7 +60,7 @@
|
|||
EXTRA_CMDLINE="quiet console=tty0 ssh consoleblank=0 systemd.show_status=0 loglevel=0 panic=20"
|
||||
|
||||
# additional packages to install
|
||||
# ADDITIONAL_PACKAGES=""
|
||||
ADDITIONAL_PACKAGES=" emulators gamesupport 351files"
|
||||
|
||||
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
|
||||
# Space separated list is supported,
|
||||
|
|
|
@ -60,7 +60,7 @@
|
|||
EXTRA_CMDLINE="quiet console=tty0 fbcon=rotate:3 ssh consoleblank=0 systemd.show_status=0 loglevel=0 panic=20"
|
||||
|
||||
# additional packages to install
|
||||
# ADDITIONAL_PACKAGES=""
|
||||
ADDITIONAL_PACKAGES=" emulators gamesupport 351files"
|
||||
|
||||
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
|
||||
# Space separated list is supported,
|
||||
|
|
|
@ -61,6 +61,7 @@
|
|||
|
||||
# additional packages to install
|
||||
# ADDITIONAL_PACKAGES=""
|
||||
ADDITIONAL_PACKAGES=" emulators gamesupport 351files"
|
||||
|
||||
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
|
||||
# Space separated list is supported,
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
EXTRA_CMDLINE="quiet console=ttyS2,1500000 console=tty0 ssh consoleblank=0 systemd.show_status=0 loglevel=0 panic=20 video=HDMI-A-1:1280x720@60"
|
||||
|
||||
# additional packages to install
|
||||
#ADDITIONAL_PACKAGES=""
|
||||
ADDITIONAL_PACKAGES=" emulators gamesupport 351files"
|
||||
|
||||
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
|
||||
# Space separated list is supported,
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
EXTRA_CMDLINE="quiet console=ttyS2,1500000 console=tty0 ssh consoleblank=0 systemd.show_status=0 loglevel=0 panic=20 video=HDMI-A-1:1280x720@60"
|
||||
|
||||
# additional packages to install
|
||||
#ADDITIONAL_PACKAGES=""
|
||||
ADDITIONAL_PACKAGES=" emulators gamesupport 351files"
|
||||
|
||||
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
|
||||
# Space separated list is supported,
|
||||
|
|
|
@ -59,7 +59,7 @@
|
|||
EXTRA_CMDLINE="quiet video=DSI-1:1152x1920p60 fbcon=rotate:3 ssh consoleblank=0 systemd.show_status=0 loglevel=0 panic=20"
|
||||
|
||||
# additional packages to install
|
||||
#ADDITIONAL_PACKAGES=""
|
||||
ADDITIONAL_PACKAGES=" emulators gamesupport 351files"
|
||||
|
||||
# additional Firmware to use (dvb-firmware, misc-firmware, wlan-firmware)
|
||||
# Space separated list is supported,
|
||||
|
|
|
@ -46,6 +46,11 @@ case $1 in
|
|||
nohup systemctl start volume &
|
||||
fi
|
||||
|
||||
if [ "$(get_setting wifi.enabled)" == "1" ]
|
||||
then
|
||||
nohup wifictl reconnect &
|
||||
fi
|
||||
|
||||
DEVICE_VOLUME=$(get_setting "audio.volume" 2>/dev/null)
|
||||
amixer set "${DEVICE_AUDIO_MIXER}" ${DEVICE_VOLUME}% 2>&1 >/dev/null
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ case ${DEVICE} in
|
|||
;;
|
||||
RG552)
|
||||
PKG_URL="${PKG_SITE}/rk3399-uboot.git"
|
||||
PKG_VERSION="23f4a5d"
|
||||
PKG_VERSION="b2b3fa8268"
|
||||
;;
|
||||
RG353P|RG503)
|
||||
PKG_URL="${PKG_SITE}/rk356x-uboot.git"
|
||||
|
|
Loading…
Reference in a new issue