libappimage squashfuse xdg-utils-cxx

This commit is contained in:
Rmys
2021-05-20 18:56:06 +03:00
committed by GitHub
parent 1af4642a87
commit 6e0d4bd682
10 changed files with 349 additions and 0 deletions
@@ -0,0 +1,25 @@
#!/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 cmaketools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
def setup():
cmaketools.configure("-DUSE_SYSTEM_XZ=ON \
-DUSE_SYSTEM_SQUASHFUSE=ON \
-DUSE_SYSTEM_LIBARCHIVE=ON \
-DUSE_SYSTEM_BOOST=ON \
-DUSE_SYSTEM_XDGUTILS=ON \
-DBUILD_TESTING=OFF")
def build():
cmaketools.make()
def install():
cmaketools.rawInstall("DESTDIR=%s" % get.installDIR())
pisitools.dodoc("LICENSE", "README*")
@@ -0,0 +1,50 @@
diff --git a/src/libappimage/utils/StringSanitizer.cpp b/src/libappimage/utils/StringSanitizer.cpp
index fee9f7d..521d82e 100644
--- a/src/libappimage/utils/StringSanitizer.cpp
+++ b/src/libappimage/utils/StringSanitizer.cpp
@@ -13,6 +13,20 @@ std::string StringSanitizer::sanitizeForPath() {
std::vector<std::string::value_type> buffer{};
buffer.reserve(input_.size());
+ // these three lists can be used to compose alphabets for sanitization
+ static constexpr std::initializer_list<std::string::value_type> asciiLetters_ = {
+ 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
+ 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
+ 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M',
+ 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
+ };
+ static constexpr std::initializer_list<std::string::value_type> asciiDigits_ = {
+ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
+ };
+ static constexpr std::initializer_list<std::string::value_type> pathSafeChars_ = {
+ '.', '-', '_'
+ };
+
// first of all, we compose an alphabet of safe characters
// all characters not contained in this alphabet will be replaced by some safe character, e.g., an underscore (_)
std::vector<std::string::value_type> safeAlphabet{asciiDigits_.size() + asciiLetters_.size() + pathSafeChars_.size()};
diff --git a/src/libappimage/utils/StringSanitizer.h b/src/libappimage/utils/StringSanitizer.h
index 5301ec1..9919ed6 100644
--- a/src/libappimage/utils/StringSanitizer.h
+++ b/src/libappimage/utils/StringSanitizer.h
@@ -10,20 +10,6 @@ class StringSanitizer {
private:
std::string input_;
- // these three lists can be used to compose alphabets for sanitization
- static constexpr std::initializer_list<std::string::value_type> asciiLetters_ = {
- 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
- 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
- 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M',
- 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
- };
- static constexpr std::initializer_list<std::string::value_type> asciiDigits_ = {
- '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
- };
- static constexpr std::initializer_list<std::string::value_type> pathSafeChars_ = {
- '.', '-', '_'
- };
-
public:
/**
* Default constructor.
+75
View File
@@ -0,0 +1,75 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>libappimage</Name>
<Homepage>https://appimage.org/</Homepage>
<Packager>
<Name>Pisi Linux Admins</Name>
<Email>admin@pisilinux.org</Email>
</Packager>
<License>GPLv3</License>
<IsA>library</IsA>
<Summary>Reference implementation of the AppImage specification</Summary>
<Description>Reference implementation of the AppImage specification</Description>
<Archive sha1sum="bee039f3551c2a9cf8af1694fb782260254d1828" type="targz">https://github.com/AppImage/libappimage/archive/refs/tags/v1.0.3.tar.gz</Archive>
<BuildDependencies>
<Dependency>vim</Dependency>
<Dependency>wget</Dependency>
<Dependency>cmake</Dependency>
<Dependency>boost-devel</Dependency>
<Dependency>cairo-devel</Dependency>
<Dependency>glib2-devel</Dependency>
<Dependency>librsvg-devel</Dependency>
<Dependency>desktop-file-utils</Dependency>
<Dependency>libarchive-devel</Dependency>
<Dependency>squashfuse-devel</Dependency>
<Dependency>xdg-utils-cxx-devel</Dependency>
</BuildDependencies>
<Patches>
<Patch level="1">libappimage-gcc10.patch</Patch>
</Patches>
</Source>
<Package>
<Name>libappimage</Name>
<RuntimeDependencies>
<Dependency>boost</Dependency>
<Dependency>cairo</Dependency>
<Dependency>glib2</Dependency>
<Dependency>libgcc</Dependency>
<Dependency>librsvg</Dependency>
<Dependency>libarchive</Dependency>
<Dependency>squashfuse</Dependency>
<Dependency>xdg-utils-cxx</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<Package>
<Name>libappimage-devel</Name>
<Summary>Development files for libappimage</Summary>
<RuntimeDependencies>
<Dependency release="current">libappimage</Dependency>
<Dependency>xdg-utils-cxx-devel</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="data">/usr/lib/cmake</Path>
<Path fileType="data">/usr/lib/pkgconfig</Path>
</Files>
</Package>
<History>
<Update release="1">
<Date>2021-05-19</Date>
<Version>1.0.3</Version>
<Comment>First release</Comment>
<Name>Pisi Linux Admins</Name>
<Email>admin@pisilinux.org</Email>
</Update>
</History>
</PISI>
@@ -0,0 +1,8 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>libappimage</Name>
<Summary xml:lang="tr">Reference implementation of the AppImage specification</Summary>
<Description xml:lang="tr">Reference implementation of the AppImage specification</Description>
</Source>
</PISI>
+26
View File
@@ -0,0 +1,26 @@
#!/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.system("./autogen.sh")
autotools.configure("--enable-static=no")
pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ")
def build():
autotools.make()
def install():
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
pisitools.dodoc("LICENSE", "NEWS", "README*")
+73
View File
@@ -0,0 +1,73 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>squashfuse</Name>
<Homepage>https://github.com/vasi/squashfuse</Homepage>
<Packager>
<Name>Pisi Linux Admins</Name>
<Email>admin@pisilinux.org</Email>
</Packager>
<License>custom</License>
<IsA>app</IsA>
<Summary>FUSE filesystem to mount squashfs archives</Summary>
<Description>FUSE filesystem to mount squashfs archives</Description>
<Archive sha1sum="d3dc4dd8cbd7bae159c884a078c24aacc99ba9c2" type="targz">https://github.com/vasi/squashfuse/archive/refs/tags/0.1.104.tar.gz</Archive>
<BuildDependencies>
<Dependency>xz-devel</Dependency>
<Dependency>lz4-devel</Dependency>
<Dependency>lzo-devel</Dependency>
<Dependency>zlib-devel</Dependency>
<Dependency>zstd-devel</Dependency>
<Dependency>fuse-devel</Dependency>
<Dependency>squashfs-tools</Dependency>
</BuildDependencies>
<!--
<Patches>
<Patch>squashfuse.patch</Patch>
<Patch level="1">squashfuse.patch</Patch>
</Patches>
-->
</Source>
<Package>
<Name>squashfuse</Name>
<RuntimeDependencies>
<Dependency>xz</Dependency>
<Dependency>lz4</Dependency>
<Dependency>lzo</Dependency>
<Dependency>zlib</Dependency>
<Dependency>zstd</Dependency>
<Dependency>fuse</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="library">/usr/lib</Path>
<Path fileType="man">/usr/share/man</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<Package>
<Name>squashfuse-devel</Name>
<Summary>Development files for squashfuse</Summary>
<RuntimeDependencies>
<Dependency release="current">squashfuse</Dependency>
<Dependency>xz-devel</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="library">/usr/lib/pkgconfig</Path>
</Files>
</Package>
<History>
<Update release="1">
<Date>2021-05-19</Date>
<Version>0.1.104</Version>
<Comment>First release</Comment>
<Name>Pisi Linux Admins</Name>
<Email>admin@pisilinux.org</Email>
</Update>
</History>
</PISI>
@@ -0,0 +1,8 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>squashfuse</Name>
<Summary xml:lang="tr">FUSE filesystem to mount squashfs archives</Summary>
<Description xml:lang="tr">FUSE filesystem to mount squashfs archives</Description>
</Source>
</PISI>
@@ -0,0 +1,20 @@
#!/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 cmaketools
from pisi.actionsapi import pisitools
from pisi.actionsapi import get
def setup():
cmaketools.configure()
def build():
cmaketools.make()
def install():
cmaketools.rawInstall("DESTDIR=%s" % get.installDIR())
pisitools.dodoc("LICENSE", "README*")
@@ -0,0 +1,56 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>xdg-utils-cxx</Name>
<Homepage>https://github.com/azubieta/xdg-utils-cxx</Homepage>
<Packager>
<Name>Pisi Linux Admins</Name>
<Email>admin@pisilinux.org</Email>
</Packager>
<License>MIT</License>
<IsA>library</IsA>
<Summary>Implementation of the FreeDesktop specifications to be used in C++ projects</Summary>
<Description>Implementation of the FreeDesktop specifications to be used in C++ projects</Description>
<Archive sha1sum="3f86382bca7a28f9ac4f1d92b45257ddc3398d0e" type="targz">https://github.com/azubieta/xdg-utils-cxx/archive/refs/tags/v1.0.1.tar.gz</Archive>
<BuildDependencies>
<Dependency>cmake</Dependency>
</BuildDependencies>
<!--
<Patches>
<Patch>xdg-utils-cxx.patch</Patch>
<Patch level="1">xdg-utils-cxx.patch</Patch>
</Patches>
-->
</Source>
<Package>
<Name>xdg-utils-cxx</Name>
<Files>
<Path fileType="library">/usr/lib</Path>
<Path fileType="doc">/usr/share/doc</Path>
</Files>
</Package>
<Package>
<Name>xdg-utils-cxx-devel</Name>
<Summary>Development files for xdg-utils-cxx</Summary>
<RuntimeDependencies>
<Dependency release="current">xdg-utils-cxx</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="header">/usr/include</Path>
<Path fileType="data">/usr/lib/cmake</Path>
</Files>
</Package>
<History>
<Update release="1">
<Date>2021-05-19</Date>
<Version>1.0.1</Version>
<Comment>First release</Comment>
<Name>Pisi Linux Admins</Name>
<Email>admin@pisilinux.org</Email>
</Update>
</History>
</PISI>
@@ -0,0 +1,8 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>xdg-utils-cxx</Name>
<Summary xml:lang="tr">Implementation of the FreeDesktop specifications to be used in C++ projects</Summary>
<Description xml:lang="tr">Implementation of the FreeDesktop specifications to be used in C++ projects</Description>
</Source>
</PISI>