i386 generator
This commit is contained in:
parent
6b54ab0a67
commit
da48e2ab4d
22
.github/workflows/gen-i386-whitelist.yml
vendored
Normal file
22
.github/workflows/gen-i386-whitelist.yml
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
name: Generate and commit i386 whitelist
|
||||
|
||||
on:
|
||||
workflow_dispatch
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: self-hosted
|
||||
container:
|
||||
image: ghcr.io/pikaos-linux/pika-base-debian-container:i386
|
||||
volumes:
|
||||
- /proc:/proc
|
||||
options: --privileged -it
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Generate whitelist json files
|
||||
run: ./gen-i386-whitelist.py
|
||||
|
||||
- name: Setup git and push
|
||||
run: git config --global user.name 'Github Workflow Action' && git config --global user.email 'hotrod.master@hotmail.com' && git config --global --add safe.directory /__w/pika-base-debian-container/pika-base-debian-container && git add . && git commit -am"Commited by GH Action - gen-i386-whitelist.yml" && git push
|
53
gen-i386-whitelist.py
Executable file
53
gen-i386-whitelist.py
Executable file
@ -0,0 +1,53 @@
|
||||
#! /bin/python3
|
||||
|
||||
import os, errno
|
||||
import json
|
||||
import subprocess
|
||||
import apt
|
||||
|
||||
def silentremove(filename):
|
||||
try:
|
||||
os.remove(filename)
|
||||
except OSError as e: # this would be "except OSError, e:" before Python 2.6
|
||||
if e.errno != errno.ENOENT: # errno.ENOENT = no such file or directory
|
||||
raise # re-raise exception if a different error occurred
|
||||
|
||||
current_path = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
pkgname_lines = []
|
||||
srcname_lines = []
|
||||
srcnames_clean = []
|
||||
file = open(current_path + "/i386_whitelist_bins", "r")
|
||||
for line in file.readlines():
|
||||
pkgname = line.strip()
|
||||
if pkgname != "" and not pkgname.endswith("-udeb"):
|
||||
pkgname_lines.append(pkgname)
|
||||
result = subprocess.run([current_path + '/get_depend_tree.sh', pkgname], stdout=subprocess.PIPE)
|
||||
stdout = result.stdout.decode('utf-8')
|
||||
for line in stdout.splitlines():
|
||||
if line != "":
|
||||
pkgname_lines.append(line)
|
||||
file.close()
|
||||
|
||||
c = apt.Cache()
|
||||
|
||||
for pkgname in pkgname_lines:
|
||||
src_name = c[pkgname].candidate.source_name
|
||||
if src_name:
|
||||
srcname_lines.append(src_name)
|
||||
|
||||
for i in srcname_lines:
|
||||
if i not in srcnames_clean:
|
||||
srcnames_clean.append(i)
|
||||
|
||||
src_data = {
|
||||
'i386_whitelist': [source_name for source_name in srcnames_clean],
|
||||
}
|
||||
|
||||
|
||||
silentremove("i386_src_whitelist.json")
|
||||
with open("i386_src_whitelist.json", "w") as twitterDataFile:
|
||||
twitterDataFile.write(
|
||||
json.dumps(src_data, indent=4)
|
||||
)
|
||||
|
@ -1,2 +1,2 @@
|
||||
#! /bin/bash
|
||||
sudo apt showsrc "$1" | grep -E "^Binary:" | cut -d":" -f2- | sed 's/\,/\n/g' | sed 's/\ /\n/g' | sed '/^$/d'
|
||||
apt showsrc "$1" | grep -E "^Binary:" | cut -d":" -f2- | sed 's/\,/\n/g' | sed 's/\ /\n/g' | sed '/^$/d'
|
||||
|
37
get_depend_tree.py
Executable file
37
get_depend_tree.py
Executable file
@ -0,0 +1,37 @@
|
||||
#!/usr/bin/python3
|
||||
import sys
|
||||
|
||||
import apt
|
||||
|
||||
|
||||
def dependencies(cache, pkg, deps, key="Depends"):
|
||||
# print "pkg: %s (%s)" % (pkg.name, deps)
|
||||
candver = cache._depcache.get_candidate_ver(pkg._pkg)
|
||||
if candver is None:
|
||||
return deps
|
||||
dependslist = candver.depends_list
|
||||
if key in dependslist:
|
||||
for depVerList in dependslist[key]:
|
||||
for dep in depVerList:
|
||||
if dep.target_pkg.name in cache:
|
||||
if (
|
||||
pkg.name != dep.target_pkg.name
|
||||
and dep.target_pkg.name not in deps
|
||||
):
|
||||
deps.add(dep.target_pkg.name)
|
||||
dependencies(cache, cache[dep.target_pkg.name], deps, key)
|
||||
return deps
|
||||
|
||||
|
||||
pkgname = sys.argv[1]
|
||||
c = apt.Cache()
|
||||
pkg = c[pkgname]
|
||||
|
||||
deps = set()
|
||||
|
||||
deps = dependencies(c, pkg, deps, "Depends")
|
||||
print(" ".join(deps))
|
||||
|
||||
preDeps = set()
|
||||
preDeps = dependencies(c, pkg, preDeps, "PreDepends")
|
||||
print(" ".join(preDeps))
|
2
get_depend_tree.sh
Executable file
2
get_depend_tree.sh
Executable file
@ -0,0 +1,2 @@
|
||||
#! /bin/bash
|
||||
./get_depend_tree.py "$1" | sed 's/\,/\n/g' | sed 's/\ /\n/g' | sed '/^$/d'
|
@ -1,501 +0,0 @@
|
||||
{
|
||||
"i386_whitelist": [
|
||||
"a52dec",
|
||||
"aalib",
|
||||
"acl",
|
||||
"adduser",
|
||||
"adwaita-icon-theme",
|
||||
"alsa-lib",
|
||||
"alsa-plugins",
|
||||
"aom",
|
||||
"apparmor",
|
||||
"apt",
|
||||
"argon2",
|
||||
"aribb24",
|
||||
"aspell",
|
||||
"at-spi2-core",
|
||||
"attica-kf5",
|
||||
"attr",
|
||||
"audit",
|
||||
"avahi",
|
||||
"base-passwd",
|
||||
"blt",
|
||||
"brotli",
|
||||
"bubblewrap",
|
||||
"bzip2",
|
||||
"cabextract",
|
||||
"ca-certificates",
|
||||
"cairo",
|
||||
"cdebconf",
|
||||
"cdparanoia",
|
||||
"chardet",
|
||||
"chromaprint",
|
||||
"cjson",
|
||||
"codec2",
|
||||
"colord",
|
||||
"coreutils",
|
||||
"cryptsetup",
|
||||
"cups",
|
||||
"curl",
|
||||
"cyrus-sasl2",
|
||||
"dav1d",
|
||||
"db5.3",
|
||||
"dbus",
|
||||
"dbus-broker",
|
||||
"dbus-python",
|
||||
"dconf",
|
||||
"debconf",
|
||||
"dictionaries-common",
|
||||
"distro-info-data",
|
||||
"double-conversion",
|
||||
"dpkg",
|
||||
"duktape",
|
||||
"e2fsprogs",
|
||||
"elfutils",
|
||||
"emacsen-common",
|
||||
"enchant-2",
|
||||
"expat",
|
||||
"faad2",
|
||||
"fdk-aac-free",
|
||||
"ffmpeg",
|
||||
"fftw3",
|
||||
"file",
|
||||
"flac",
|
||||
"flite",
|
||||
"fluid-soundfont",
|
||||
"fluidsynth",
|
||||
"fontconfig",
|
||||
"fonts-dejavu",
|
||||
"fonts-freefont",
|
||||
"fonts-liberation",
|
||||
"fonts-noto",
|
||||
"fonts-urw-base35",
|
||||
"freetype",
|
||||
"fribidi",
|
||||
"fuse3",
|
||||
"game-music-emu",
|
||||
"gamin",
|
||||
"gcc-14",
|
||||
"gcc-defaults",
|
||||
"gdbm",
|
||||
"gdk-pixbuf",
|
||||
"giflib",
|
||||
"glib2.0",
|
||||
"glibc",
|
||||
"glib-networking",
|
||||
"gmp",
|
||||
"gnome-terminal",
|
||||
"gnupg1",
|
||||
"gnupg2",
|
||||
"gnutls28",
|
||||
"gobject-introspection",
|
||||
"gpgme1.0",
|
||||
"gpm",
|
||||
"graphite2",
|
||||
"gsettings-desktop-schemas",
|
||||
"gssdp",
|
||||
"gst-libav1.0",
|
||||
"gst-plugins-bad1.0",
|
||||
"gst-plugins-base1.0",
|
||||
"gst-plugins-good1.0",
|
||||
"gst-plugins-ugly1.0",
|
||||
"gstreamer1.0",
|
||||
"gtk+3.0",
|
||||
"gupnp",
|
||||
"gupnp-igd",
|
||||
"harfbuzz",
|
||||
"hicolor-icon-theme",
|
||||
"humanity-icon-theme",
|
||||
"hunspell",
|
||||
"hyphen",
|
||||
"icu",
|
||||
"imath",
|
||||
"init-system-helpers",
|
||||
"intel-gmmlib",
|
||||
"intel-media-driver-non-free",
|
||||
"intel-mediasdk",
|
||||
"intel-vaapi-driver",
|
||||
"iptables",
|
||||
"isl",
|
||||
"iso-codes",
|
||||
"jackd2",
|
||||
"jansson",
|
||||
"jbigkit",
|
||||
"json-c",
|
||||
"json-glib",
|
||||
"karchive",
|
||||
"kauth",
|
||||
"kbookmarks",
|
||||
"kcodecs",
|
||||
"kcompletion",
|
||||
"kconfig",
|
||||
"kconfigwidgets",
|
||||
"kcoreaddons",
|
||||
"kcrash",
|
||||
"kdbusaddons",
|
||||
"kded",
|
||||
"kdoctools",
|
||||
"keyutils",
|
||||
"kglobalaccel",
|
||||
"kguiaddons",
|
||||
"ki18n",
|
||||
"kiconthemes",
|
||||
"kio",
|
||||
"kitemviews",
|
||||
"kjobwidgets",
|
||||
"kmod",
|
||||
"knewstuff",
|
||||
"knotifications",
|
||||
"knotifyconfig",
|
||||
"konsole",
|
||||
"kpackage",
|
||||
"kparts",
|
||||
"kpty",
|
||||
"krb5",
|
||||
"kservice",
|
||||
"ktextwidgets",
|
||||
"kwallet-kf5",
|
||||
"kwayland",
|
||||
"kwidgetsaddons",
|
||||
"kwindowsystem",
|
||||
"kxmlgui",
|
||||
"lame",
|
||||
"lcms2",
|
||||
"leptonlib",
|
||||
"lerc",
|
||||
"libarchive",
|
||||
"libass",
|
||||
"libassuan",
|
||||
"libasyncns",
|
||||
"libavc1394",
|
||||
"libavtp",
|
||||
"libbluray",
|
||||
"libbs2b",
|
||||
"libbsd",
|
||||
"libcaca",
|
||||
"libcanberra",
|
||||
"libcap2",
|
||||
"libcap-ng",
|
||||
"libcdio",
|
||||
"libcdio-paranoia",
|
||||
"libdatrie",
|
||||
"libdbusmenu-qt",
|
||||
"libdc1394",
|
||||
"libdca",
|
||||
"libde265",
|
||||
"libdebian-installer",
|
||||
"libdecor-0",
|
||||
"libdeflate",
|
||||
"libdrm",
|
||||
"libdv",
|
||||
"libdvdnav",
|
||||
"libdvdread",
|
||||
"libedit",
|
||||
"libepoxy",
|
||||
"libevdev",
|
||||
"libexif",
|
||||
"libffi",
|
||||
"libfontenc",
|
||||
"libgcrypt20",
|
||||
"libgd2",
|
||||
"libglvnd",
|
||||
"libgpg-error",
|
||||
"libgphoto2",
|
||||
"libgsm",
|
||||
"libgudev",
|
||||
"libhandy-1",
|
||||
"libice",
|
||||
"libidn2",
|
||||
"libiec61883",
|
||||
"libieee1284",
|
||||
"libimagequant",
|
||||
"libimobiledevice",
|
||||
"libinput",
|
||||
"libinstpatch",
|
||||
"libjpeg8-empty",
|
||||
"libjpeg-turbo",
|
||||
"libkate",
|
||||
"libksba",
|
||||
"libldac",
|
||||
"libmanette",
|
||||
"libmd",
|
||||
"libmodplug",
|
||||
"libmpc",
|
||||
"libmspack",
|
||||
"libmysofa",
|
||||
"libnice",
|
||||
"libnotify",
|
||||
"libnsl",
|
||||
"libogg",
|
||||
"libopenmpt",
|
||||
"libpcap",
|
||||
"libpciaccess",
|
||||
"libpgm",
|
||||
"libplacebo",
|
||||
"libplist",
|
||||
"libpng1.6",
|
||||
"libproxy",
|
||||
"libpsl",
|
||||
"libpthread-stubs",
|
||||
"librabbitmq",
|
||||
"libraw1394",
|
||||
"librist",
|
||||
"librsvg",
|
||||
"libsamplerate",
|
||||
"libsdl2",
|
||||
"libseccomp",
|
||||
"libsecret",
|
||||
"libselinux",
|
||||
"libsemanage",
|
||||
"libsepol",
|
||||
"libshout",
|
||||
"libsidplay",
|
||||
"libsm",
|
||||
"libsndfile",
|
||||
"libsodium",
|
||||
"libsoup2.4",
|
||||
"libsoup3",
|
||||
"libsoxr",
|
||||
"libsrtp2",
|
||||
"libssh",
|
||||
"libtasn1-6",
|
||||
"libtext-iconv-perl",
|
||||
"libtextwrap",
|
||||
"libthai",
|
||||
"libtheora",
|
||||
"libtirpc",
|
||||
"libtool",
|
||||
"libudfread",
|
||||
"libunistring",
|
||||
"libunwind",
|
||||
"libusb-1.0",
|
||||
"libusbmuxd",
|
||||
"libutempter",
|
||||
"libva",
|
||||
"libvdpau",
|
||||
"libvidstab",
|
||||
"libvisual",
|
||||
"libvorbis",
|
||||
"libvpx",
|
||||
"libwacom",
|
||||
"libwebp",
|
||||
"libx11",
|
||||
"libxau",
|
||||
"libxaw",
|
||||
"libxcb",
|
||||
"libxcomposite",
|
||||
"libxcrypt",
|
||||
"libxcursor",
|
||||
"libxdamage",
|
||||
"libxdmcp",
|
||||
"libxext",
|
||||
"libxfixes",
|
||||
"libxi",
|
||||
"libxinerama",
|
||||
"libxkbcommon",
|
||||
"libxml2",
|
||||
"libxmu",
|
||||
"libxpm",
|
||||
"libxrandr",
|
||||
"libxrender",
|
||||
"libxshmfence",
|
||||
"libxslt",
|
||||
"libxss",
|
||||
"libxt",
|
||||
"libxv",
|
||||
"libxxf86vm",
|
||||
"libyaml",
|
||||
"libzstd",
|
||||
"lilv",
|
||||
"llvm-toolchain-15",
|
||||
"llvm-toolchain-17",
|
||||
"llvm-toolchain-18",
|
||||
"lmdb",
|
||||
"lm-sensors",
|
||||
"lsb",
|
||||
"lsb-release-minimal",
|
||||
"lutris",
|
||||
"lvm2",
|
||||
"lxml",
|
||||
"lz4",
|
||||
"mailcap",
|
||||
"mangohud",
|
||||
"mbedtls",
|
||||
"md4c",
|
||||
"media-types",
|
||||
"mesa",
|
||||
"mesa-demos",
|
||||
"mime-support",
|
||||
"mjpegtools",
|
||||
"mpclib3",
|
||||
"mpeg2dec",
|
||||
"mpfr4",
|
||||
"mpg123",
|
||||
"mtdev",
|
||||
"ncurses",
|
||||
"net-snmp",
|
||||
"nettle",
|
||||
"newt",
|
||||
"nghttp2",
|
||||
"norm",
|
||||
"npth",
|
||||
"nspr",
|
||||
"nss",
|
||||
"numactl",
|
||||
"nvidia-cuda-toolkit",
|
||||
"ocl-icd",
|
||||
"openal-soft",
|
||||
"opencore-amr",
|
||||
"openexr",
|
||||
"openh264",
|
||||
"openjpeg2",
|
||||
"openldap",
|
||||
"openssl",
|
||||
"opus",
|
||||
"orc",
|
||||
"p11-kit",
|
||||
"p7zip",
|
||||
"pam",
|
||||
"pango1.0",
|
||||
"pci.ids",
|
||||
"pciutils",
|
||||
"pcre2",
|
||||
"pcsc-lite",
|
||||
"perl",
|
||||
"pillow",
|
||||
"pinentry",
|
||||
"pipewire",
|
||||
"pixman",
|
||||
"policykit-1",
|
||||
"polkit-qt-1",
|
||||
"poppler",
|
||||
"popt",
|
||||
"procps",
|
||||
"psmisc",
|
||||
"pulseaudio",
|
||||
"pycairo",
|
||||
"pygobject",
|
||||
"python3.11",
|
||||
"python3-defaults",
|
||||
"python3-stdlib-extensions",
|
||||
"python-apt",
|
||||
"python-certifi",
|
||||
"python-distro",
|
||||
"python-idna",
|
||||
"python-magic",
|
||||
"python-setproctitle",
|
||||
"python-urllib3",
|
||||
"pyyaml",
|
||||
"qca2",
|
||||
"qtbase-opensource-src",
|
||||
"qtbase-opensource-src-gles",
|
||||
"qtdeclarative-opensource-src",
|
||||
"qtdeclarative-opensource-src-gles",
|
||||
"qtmultimedia-opensource-src",
|
||||
"qtspeech-opensource-src",
|
||||
"qtsvg-opensource-src",
|
||||
"qtwayland-opensource-src",
|
||||
"qtx11extras-opensource-src",
|
||||
"raqm",
|
||||
"readline",
|
||||
"requests",
|
||||
"rtmpdump",
|
||||
"rubberband",
|
||||
"samba",
|
||||
"sane-backends",
|
||||
"sbc",
|
||||
"scowl",
|
||||
"sed",
|
||||
"serd",
|
||||
"session-migration",
|
||||
"setuptools",
|
||||
"sgml-base",
|
||||
"shadow",
|
||||
"shared-mime-info",
|
||||
"shine",
|
||||
"six",
|
||||
"slang2",
|
||||
"snappy",
|
||||
"sndio",
|
||||
"solid",
|
||||
"sonnet",
|
||||
"sord",
|
||||
"sound-theme-freedesktop",
|
||||
"soundtouch",
|
||||
"spandsp",
|
||||
"speex",
|
||||
"speexdsp",
|
||||
"sqlite3",
|
||||
"sratom",
|
||||
"srt",
|
||||
"svt-av1",
|
||||
"syndication",
|
||||
"systemd",
|
||||
"sysvinit",
|
||||
"taglib",
|
||||
"talloc",
|
||||
"tar",
|
||||
"tcl8.6",
|
||||
"tcp-wrappers",
|
||||
"tdb",
|
||||
"tesseract",
|
||||
"tevent",
|
||||
"tex-gyre",
|
||||
"texinfo",
|
||||
"tiff",
|
||||
"timgm6mb-soundfont",
|
||||
"tk8.6",
|
||||
"twolame",
|
||||
"tzdata",
|
||||
"ubuntu-keyring",
|
||||
"ubuntu-themes",
|
||||
"unixodbc",
|
||||
"unzip",
|
||||
"util-linux",
|
||||
"v4l-utils",
|
||||
"vkbasalt",
|
||||
"vo-aacenc",
|
||||
"vo-amrwbenc",
|
||||
"vte2.91",
|
||||
"vulkan-loader",
|
||||
"vulkan-tools",
|
||||
"wavpack",
|
||||
"wayland",
|
||||
"webkit2gtk",
|
||||
"webrtc-audio-processing",
|
||||
"wildmidi",
|
||||
"woff2",
|
||||
"x11-xserver-utils",
|
||||
"x264",
|
||||
"x265",
|
||||
"xbitmaps",
|
||||
"xcb-util",
|
||||
"xcb-util-image",
|
||||
"xcb-util-keysyms",
|
||||
"xcb-util-renderutil",
|
||||
"xcb-util-wm",
|
||||
"xdg-dbus-proxy",
|
||||
"xdg-desktop-portal",
|
||||
"xdg-desktop-portal-gtk",
|
||||
"xdg-desktop-portal-kde",
|
||||
"xfonts-encodings",
|
||||
"xfonts-utils",
|
||||
"xft",
|
||||
"xkeyboard-config",
|
||||
"xml-core",
|
||||
"xorg",
|
||||
"xorgproto",
|
||||
"xorg-sgml-doctools",
|
||||
"xterm",
|
||||
"xtrans",
|
||||
"xvidcore",
|
||||
"xxhash",
|
||||
"xz-utils",
|
||||
"zbar",
|
||||
"zenity",
|
||||
"zeromq3",
|
||||
"zimg",
|
||||
"zlib",
|
||||
"zvbi"
|
||||
]
|
||||
}
|
4600
i386_whitelist_bins
Normal file
4600
i386_whitelist_bins
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user