diff --git a/pisi-index.xml b/pisi-index.xml
index baf547e6..e28094c7 100644
--- a/pisi-index.xml
+++ b/pisi-index.xml
@@ -15095,7 +15095,7 @@
glib2
libgcc
expat
- duktape
+ duktape
/etc
@@ -18712,6 +18712,62 @@
+
+
+ duktape
+ https://duktape.org/
+
+ Pisi Linux Admins
+ admin@pisilinux.org
+
+ MIT
+ library
+ system.base
+ Embeddable Javascript engine
+ Embeddable Javascript engine
+ Embeddable Javascript engine
+ Embeddable Javascript engine
+ https://duktape.org/duktape-2.6.0.tar.xz
+
+ Makefile
+
+
+ duktape-build.patch
+
+ system/base/duktape/pspec.xml
+
+
+ duktape
+
+ /usr/lib
+ /usr/share
+ /usr/share/doc
+
+
+ duktape.pc
+
+
+
+ duktape-devel
+ Development files for duktape
+
+ duktape
+
+
+ /usr/include
+ /usr/lib/pkgconfig
+
+
+
+
+ 2021-04-20
+ 2.6.0
+ First release
+ Pisi Linux Admins
+ admin@pisilinux.org
+
+
+
ca-certificates
diff --git a/pisi-index.xml.sha1sum b/pisi-index.xml.sha1sum
index c65db8aa..a0df948e 100644
--- a/pisi-index.xml.sha1sum
+++ b/pisi-index.xml.sha1sum
@@ -1 +1 @@
-d25276e4213d7fa25bfb5202ab8be11cedd5779c
\ No newline at end of file
+804cda601c89d56db758275d953dc1b28591a728
\ No newline at end of file
diff --git a/pisi-index.xml.xz b/pisi-index.xml.xz
index b245b20a..94c88022 100644
Binary files a/pisi-index.xml.xz and b/pisi-index.xml.xz differ
diff --git a/pisi-index.xml.xz.sha1sum b/pisi-index.xml.xz.sha1sum
index 109b9101..dd94a7cb 100644
--- a/pisi-index.xml.xz.sha1sum
+++ b/pisi-index.xml.xz.sha1sum
@@ -1 +1 @@
-09cb4e5d13a68ccd8b86e9b011ee6eaa7c5c5f77
\ No newline at end of file
+285d2239a389e15df9ad69f57a97f44def37fac4
\ No newline at end of file
diff --git a/system/base/duktape/actions.py b/system/base/duktape/actions.py
new file mode 100644
index 00000000..191e1805
--- /dev/null
+++ b/system/base/duktape/actions.py
@@ -0,0 +1,23 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+# Licensed under the GNU General Public License, version 3.
+# See the file http://www.gnu.org/licenses/gpl.txt
+
+from pisi.actionsapi import autotools
+from pisi.actionsapi import pisitools
+from pisi.actionsapi import shelltools
+from pisi.actionsapi import get
+
+#def setup():
+ #shelltools.copy("Makefile.sharedlibrary", "Makefile")
+ #pisitools.dosed("Makefile", "INSTALL_PREFIX = /usr/local", "INSTALL_PREFIX = /usr")
+ #pisitools.dosed("Makefile.sharedlibrary", "INSTALL_PREFIX = /usr/local", "INSTALL_PREFIX = /usr")
+
+def build():
+ autotools.make()
+
+def install():
+ autotools.rawInstall("DESTDIR=%s" % get.installDIR())
+
+ pisitools.dodoc("AUTHORS*", "LICENSE*", "README*")
diff --git a/system/base/duktape/files/Makefile b/system/base/duktape/files/Makefile
new file mode 100644
index 00000000..4410b672
--- /dev/null
+++ b/system/base/duktape/files/Makefile
@@ -0,0 +1,89 @@
+#
+# Example of how to build and install locally as a shared library
+#
+# Usage:
+#
+# $ make -f Makefile.sharedlibrary
+# $ sudo make -f Makefile.sharedlibrary install
+# $ make -f Makefile.sharedlibrary duk # --> example 'duk' linked to shared libduktape
+#
+# $ ls -l duk
+# -rwxrwxr-x 1 duktape duktape 19407 Nov 30 15:48 duk
+#
+# $ ldd ./duk
+# linux-vdso.so.1 => (0x00007ffd5ed3c000)
+# libduktape.so.104 => /usr/local/lib/libduktape.so.104 (0x00007fb2f9753000)
+# libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fb2f944d000)
+# libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fb2f9088000)
+# /lib64/ld-linux-x86-64.so.2 (0x00007fb2f9991000)
+#
+# Based on: http://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html
+
+# Soname version must be bumped whenever a binary compatibility change occurs
+# (and should not be bumped when the library is compatible). A simple Duktape
+# convention is to set soname version to (100*MAJOR + MINOR), e.g. 104 for
+# Duktape 1.4.x, so that it gets automatically bumped for major and minor
+# releases (potentially binary incompatible), but not for patch releases.
+DUK_VERSION = 20600
+SONAME_VERSION = 206
+REAL_VERSION = $(SONAME_VERSION).$(DUK_VERSION)
+
+# Mac has an unusual .so naming convention
+ifeq ($(OS),Windows_NT)
+ DETECTED_OS := Windows
+else
+ DETECTED_OS := $(shell uname -s)
+endif
+ifeq ($(DETECTED_OS),Darwin)
+ LD_SONAME_ARG=-install_name
+ SO_SONAME_SUFFIX=$(SONAME_VERSION).so
+ SO_REALNAME_SUFFIX=$(REAL_VERSION).so
+else
+ LD_SONAME_ARG=-soname
+ SO_SONAME_SUFFIX=so.$(SONAME_VERSION)
+ SO_REALNAME_SUFFIX=so.$(REAL_VERSION)
+endif
+
+# Change to actual path for actual distribution packaging.
+INSTALL_PREFIX = /usr
+
+# The 'noline' variant may be more appropriate for some distributions; it
+# doesn't have #line directives in the combined source.
+DUKTAPE_SRCDIR = ./src
+#DUKTAPE_SRCDIR = ./src-noline
+
+CC = gcc
+LIBS = -lm
+
+.PHONY: all
+all: libduktape.$(SO_REALNAME_SUFFIX) libduktaped.$(SO_REALNAME_SUFFIX)
+
+# If the default duk_config.h is not suitable for the distribution, modify it
+# before compiling the shared library and copy the same, edited duk_config.h
+# to $INSTALL_PREFIX/include on installation.
+
+libduktape.$(SO_REALNAME_SUFFIX):
+ $(CC) $(CFLAGS) -shared -fPIC -Wall -Wextra -Os $(LDFLAGS) -Wl,$(LD_SONAME_ARG),libduktape.$(SO_SONAME_SUFFIX) \
+ -o $@ $(DUKTAPE_SRCDIR)/duktape.c $(LIBS)
+
+libduktaped.$(SO_REALNAME_SUFFIX):
+ $(CC) $(CFLAGS) -shared -fPIC -Wall -Wextra -Os $(LDFLAGS) -Wl,$(LD_SONAME_ARG),libduktaped.$(SO_SONAME_SUFFIX) \
+ -o $@ $(DUKTAPE_SRCDIR)/duktape.c $(LIBS)
+
+# Symlinks depend on platform conventions.
+.PHONY: install
+install: libduktape.$(SO_REALNAME_SUFFIX) libduktaped.$(SO_REALNAME_SUFFIX)
+ mkdir -p $(DESTDIR)$(INSTALL_PREFIX)/lib/
+ cp $+ $(DESTDIR)$(INSTALL_PREFIX)/lib/
+ rm -f $(DESTDIR)$(INSTALL_PREFIX)/lib/libduktape.so $(DESTDIR)$(INSTALL_PREFIX)/lib/libduktape.$(SO_SONAME_SUFFIX)
+ ln -s libduktape.$(SO_REALNAME_SUFFIX) $(DESTDIR)$(INSTALL_PREFIX)/lib/libduktape.so
+ ln -s libduktape.$(SO_REALNAME_SUFFIX) $(DESTDIR)$(INSTALL_PREFIX)/lib/libduktape.$(SO_SONAME_SUFFIX)
+ rm -f $(DESTDIR)$(INSTALL_PREFIX)/lib/libduktaped.so $(DESTDIR)$(INSTALL_PREFIX)/lib/libduktaped.$(SO_SONAME_SUFFIX)
+ ln -s libduktaped.$(SO_REALNAME_SUFFIX) $(DESTDIR)$(INSTALL_PREFIX)/lib/libduktaped.so
+ ln -s libduktaped.$(SO_REALNAME_SUFFIX) $(DESTDIR)$(INSTALL_PREFIX)/lib/libduktaped.$(SO_SONAME_SUFFIX)
+ mkdir -p $(DESTDIR)$(INSTALL_PREFIX)/include/
+ cp $(DUKTAPE_SRCDIR)/duktape.h $(DUKTAPE_SRCDIR)/duk_config.h $(DESTDIR)$(INSTALL_PREFIX)/include/
+
+CCOPTS = -I./examples/cmdline
+duk:
+ $(CC) $(CCOPTS) -I$(DESTDIR)$(INSTALL_PREFIX)/include -L$(DESTDIR)$(INSTALL_PREFIX)/lib -Wall -Wextra -Os -o $@ ./examples/cmdline/duk_cmdline.c -lduktape -lm
diff --git a/system/base/duktape/files/duktape-build.patch b/system/base/duktape/files/duktape-build.patch
new file mode 100644
index 00000000..30278928
--- /dev/null
+++ b/system/base/duktape/files/duktape-build.patch
@@ -0,0 +1,29 @@
+diff --git a/Makefile.sharedlibrary b/Makefile.sharedlibrary
+index 2c98de9..452edca 100644
+--- a/Makefile.sharedlibrary
++++ b/Makefile.sharedlibrary
+@@ -53,6 +53,7 @@ DUKTAPE_SRCDIR = ./src
+ #DUKTAPE_SRCDIR = ./src-noline
+
+ CC = gcc
++LIBS = -lm
+
+ .PHONY: all
+ all: libduktape.$(SO_REALNAME_SUFFIX) libduktaped.$(SO_REALNAME_SUFFIX)
+@@ -62,12 +63,12 @@ all: libduktape.$(SO_REALNAME_SUFFIX) libduktaped.$(SO_REALNAME_SUFFIX)
+ # to $INSTALL_PREFIX/include on installation.
+
+ libduktape.$(SO_REALNAME_SUFFIX):
+- $(CC) -shared -fPIC -Wall -Wextra -Os -Wl,$(LD_SONAME_ARG),libduktape.$(SO_SONAME_SUFFIX) \
+- -o $@ $(DUKTAPE_SRCDIR)/duktape.c
++ $(CC) $(CFLAGS) -shared -fPIC -Wall -Wextra -Os $(LDFLAGS) -Wl,$(LD_SONAME_ARG),libduktape.$(SO_SONAME_SUFFIX) \
++ -o $@ $(DUKTAPE_SRCDIR)/duktape.c $(LIBS)
+
+ libduktaped.$(SO_REALNAME_SUFFIX):
+- $(CC) -shared -fPIC -g -Wall -Wextra -Os -Wl,$(LD_SONAME_ARG),libduktaped.$(SO_SONAME_SUFFIX) \
+- -o $@ $(DUKTAPE_SRCDIR)/duktape.c
++ $(CC) $(CFLAGS) -shared -fPIC -Wall -Wextra -Os $(LDFLAGS) -Wl,$(LD_SONAME_ARG),libduktaped.$(SO_SONAME_SUFFIX) \
++ -o $@ $(DUKTAPE_SRCDIR)/duktape.c $(LIBS)
+
+ # Symlinks depend on platform conventions.
+ .PHONY: install
diff --git a/system/base/duktape/files/duktape.pc b/system/base/duktape/files/duktape.pc
new file mode 100644
index 00000000..936ff933
--- /dev/null
+++ b/system/base/duktape/files/duktape.pc
@@ -0,0 +1,10 @@
+prefix=/usr
+exec_prefix=${prefix}
+libdir=${exec_prefix}/lib
+includedir=${prefix}/include
+
+Name: duktape
+Description: Embeddable Javascript engine
+Version: 2.6.0
+Libs: -L${libdir} -lduktape
+Cflags: -I${includedir}
diff --git a/system/base/duktape/files/duktape.pc.in b/system/base/duktape/files/duktape.pc.in
new file mode 100644
index 00000000..757c2cf6
--- /dev/null
+++ b/system/base/duktape/files/duktape.pc.in
@@ -0,0 +1,10 @@
+prefix=@prefix@
+exec_prefix=${prefix}
+libdir=${exec_prefix}/@libdir@
+includedir=${prefix}/include
+
+Name: duktape
+Description: Embeddable Javascript engine
+Version: @PACKAGE_VERSION@
+Libs: -L${libdir} -lduktape
+Cflags: -I${includedir}/
diff --git a/system/base/duktape/pspec.xml b/system/base/duktape/pspec.xml
new file mode 100644
index 00000000..6433f696
--- /dev/null
+++ b/system/base/duktape/pspec.xml
@@ -0,0 +1,62 @@
+
+
+
+
+ duktape
+ https://duktape.org/
+
+ Pisi Linux Admins
+ admin@pisilinux.org
+
+ MIT
+ library
+ Embeddable Javascript engine
+ Embeddable Javascript engine
+ https://duktape.org/duktape-2.6.0.tar.xz
+
+ Makefile
+
+
+
+
+
+ duktape-build.patch
+
+
+
+
+ duktape
+
+
+
+ /usr/lib
+ /usr/share
+ /usr/share/doc
+
+
+ duktape.pc
+
+
+
+
+ duktape-devel
+ Development files for duktape
+
+ duktape
+
+
+ /usr/include
+ /usr/lib/pkgconfig
+
+
+
+
+
+ 2021-04-20
+ 2.6.0
+ First release
+ Pisi Linux Admins
+ admin@pisilinux.org
+
+
+
diff --git a/system/base/duktape/translations.xml b/system/base/duktape/translations.xml
new file mode 100644
index 00000000..fc83cdcd
--- /dev/null
+++ b/system/base/duktape/translations.xml
@@ -0,0 +1,8 @@
+
+
+
+ duktape
+ Embeddable Javascript engine
+ Embeddable Javascript engine
+
+