diff --git a/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gompi-2022a.eb b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gompi-2022a.eb
new file mode 100644
index 0000000000000000000000000000000000000000..50ed6850d0a497990ee7ea3d71c66493c5a54cc0
--- /dev/null
+++ b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gompi-2022a.eb
@@ -0,0 +1,25 @@
+easyblock = 'ConfigureMake'
+
+name = 'netCDF-C++4'
+version = '4.3.1'
+
+homepage = 'https://www.unidata.ucar.edu/software/netcdf/'
+description = """NetCDF (network Common Data Form) is a set of software libraries
+ and machine-independent data formats that support the creation, access, and sharing of array-oriented
+ scientific data."""
+
+toolchain = {'name': 'gompi', 'version': '2022a'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://github.com/Unidata/netcdf-cxx4/archive/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['e3fe3d2ec06c1c2772555bf1208d220aab5fee186d04bd265219b0bc7a978edc']
+
+dependencies = [('netCDF', '4.9.0')]
+
+sanity_check_paths = {
+    'files': ['include/netcdf', 'lib/libnetcdf_c++4.a', 'lib/libnetcdf_c++4.%s' % SHLIB_EXT],
+    'dirs': [],
+}
+
+moduleclass = 'data'
diff --git a/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gpsmpi-2022a.eb b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gpsmpi-2022a.eb
new file mode 100644
index 0000000000000000000000000000000000000000..767674d4124fdb9595585bd1e0af733c3dba0b34
--- /dev/null
+++ b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gpsmpi-2022a.eb
@@ -0,0 +1,25 @@
+easyblock = 'ConfigureMake'
+
+name = 'netCDF-C++4'
+version = '4.3.1'
+
+homepage = 'https://www.unidata.ucar.edu/software/netcdf/'
+description = """NetCDF (network Common Data Form) is a set of software libraries
+ and machine-independent data formats that support the creation, access, and sharing of array-oriented
+ scientific data."""
+
+toolchain = {'name': 'gpsmpi', 'version': '2022a'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://github.com/Unidata/netcdf-cxx4/archive/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['e3fe3d2ec06c1c2772555bf1208d220aab5fee186d04bd265219b0bc7a978edc']
+
+dependencies = [('netCDF', '4.9.0')]
+
+sanity_check_paths = {
+    'files': ['include/netcdf', 'lib/libnetcdf_c++4.a', 'lib/libnetcdf_c++4.%s' % SHLIB_EXT],
+    'dirs': [],
+}
+
+moduleclass = 'data'
diff --git a/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-ipsmpi-2022a.eb b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-ipsmpi-2022a.eb
new file mode 100644
index 0000000000000000000000000000000000000000..28870b23937a14af7e469868fdcdd5b6aab999ce
--- /dev/null
+++ b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-ipsmpi-2022a.eb
@@ -0,0 +1,25 @@
+easyblock = 'ConfigureMake'
+
+name = 'netCDF-C++4'
+version = '4.3.1'
+
+homepage = 'https://www.unidata.ucar.edu/software/netcdf/'
+description = """NetCDF (network Common Data Form) is a set of software libraries
+ and machine-independent data formats that support the creation, access, and sharing of array-oriented
+ scientific data."""
+
+toolchain = {'name': 'ipsmpi', 'version': '2022a'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://github.com/Unidata/netcdf-cxx4/archive/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['e3fe3d2ec06c1c2772555bf1208d220aab5fee186d04bd265219b0bc7a978edc']
+
+dependencies = [('netCDF', '4.9.0')]
+
+sanity_check_paths = {
+    'files': ['include/netcdf', 'lib/libnetcdf_c++4.a', 'lib/libnetcdf_c++4.%s' % SHLIB_EXT],
+    'dirs': [],
+}
+
+moduleclass = 'data'
diff --git a/Golden_Repo/o/openvkl/openvkl-1.3.1-GCC-11.3.0.eb b/Golden_Repo/o/openvkl/openvkl-1.3.1-GCC-11.3.0.eb
new file mode 100644
index 0000000000000000000000000000000000000000..7c11c301e433e143bdb7a2859251a737a9a33732
--- /dev/null
+++ b/Golden_Repo/o/openvkl/openvkl-1.3.1-GCC-11.3.0.eb
@@ -0,0 +1,43 @@
+easyblock = 'CMakeMake'
+
+name = 'openvkl'
+version = '1.3.1'
+
+homepage = 'http://www.openvkl.org/'
+description = """
+IntelĀ® Open Volume Kernel Library (IntelĀ® Open VKL) is a collection
+of high-performance volume computation kernels, developed at Intel.
+"""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://github.com/openvkl/openvkl/archive/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['c9cefb6c313f2b4c0331e9629931759a6bc204ec00deed6ec0becad1670a1933']
+
+builddependencies = [
+    ('ispc', '1.18.1', '', SYSTEM),
+    ('CMake', '3.23.1'),
+]
+
+dependencies = [
+    ('tbb', '2021.5.0'),
+    ('Embree', '3.13.5'),
+    ('rkcommon', '1.10.0'),
+]
+
+separate_build_dir = True
+
+start_dir = '%(name)s-%(version)s'
+
+configopts = '-DBUILD_BENCHMARKS:BOOL=OFF '
+configopts += '-DBUILD_EXAMPLES:BOOL=OFF '
+configopts += '-DBUILD_TESTING:BOOL=OFF '
+
+sanity_check_paths = {
+    'dirs': ['include/openvkl'],
+    'files': ['lib/libopenvkl.so'],
+}
+
+moduleclass = 'vis'
diff --git a/Golden_Repo/s/SymEngine-python/SymEngine-python-0.9.2-GCC-11.3.0.eb b/Golden_Repo/s/SymEngine-python/SymEngine-python-0.9.2-GCC-11.3.0.eb
new file mode 100644
index 0000000000000000000000000000000000000000..e4abee3bc07b376ba3bfd45c84e7b6b453e684d4
--- /dev/null
+++ b/Golden_Repo/s/SymEngine-python/SymEngine-python-0.9.2-GCC-11.3.0.eb
@@ -0,0 +1,34 @@
+easyblock = 'PythonPackage'
+
+name = 'SymEngine-python'
+version = '0.9.2'
+
+homepage = 'https://github.com/symengine/symengine.py'
+description = "Python wrappers to the C++ library SymEngine, a fast C++ symbolic manipulation library."
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+source_urls = ['https://github.com/symengine/symengine.py/archive/refs/tags/']
+sources = ['v%(version)s.tar.gz']
+patches = ['py_modules.patch']
+checksums = [
+    '9da048692d741bb001d9947a0e2bdf8909600cb4e6f3b9273d518cf93300955d',
+    '8ad1b29de924ab8589ee86658c6a7bb6921f867b26b03fdf1491a109c7df1e97',
+]
+
+builddependencies = [
+    ('CMake', '3.23.1'),
+]
+
+dependencies = [
+    ('SymEngine', '0.9.0'),
+    ('Python', '3.10.4'),
+]
+
+use_pip = True
+download_dep_fail = True
+sanity_pip_check = True
+
+options = {'modulename': 'symengine'}
+
+moduleclass = 'lib'
diff --git a/Golden_Repo/s/SymEngine-python/py_modules.patch b/Golden_Repo/s/SymEngine-python/py_modules.patch
new file mode 100644
index 0000000000000000000000000000000000000000..15a6235e12b25b9ef0ce2d1fd2e7b9753d47c41f
--- /dev/null
+++ b/Golden_Repo/s/SymEngine-python/py_modules.patch
@@ -0,0 +1,11 @@
+diff -Naur symengine.py-0.9.2.orig/setup.py symengine.py-0.9.2/setup.py
+--- symengine.py-0.9.2.orig/setup.py	2022-03-07 23:39:26.000000000 +0100
++++ symengine.py-0.9.2/setup.py	2023-02-05 09:58:50.534749182 +0100
+@@ -238,5 +238,6 @@
+         'Programming Language :: Python :: 3.8',
+         'Programming Language :: Python :: 3.9',
+         'Programming Language :: Python :: 3.10',
+-        ]
++        ],
++      py_modules=[]
+       )
diff --git a/Golden_Repo/x/XServer/0002-Constant-DPI.patch b/Golden_Repo/x/XServer/0002-Constant-DPI.patch
new file mode 100644
index 0000000000000000000000000000000000000000..f91e53d1e4934d615e16b7d975d2a6bb8ddc9238
--- /dev/null
+++ b/Golden_Repo/x/XServer/0002-Constant-DPI.patch
@@ -0,0 +1,96 @@
+--- a/src/dummy.h	2016-12-17 23:02:53.396287041 +0100
++++ b/src/dummy.h	2016-12-17 23:03:30.319616550 +0100
+@@ -51,6 +51,7 @@
+     /* options */
+     OptionInfoPtr Options;
+     Bool swCursor;
++    Bool constantDPI;
+     /* proc pointer */
+     CloseScreenProcPtr CloseScreen;
+     xf86CursorInfoPtr CursorInfo;
+--- a/src/dummy_driver.c	2016-12-14 21:54:20.000000000 +0100
++++ b/src/dummy_driver.c	2016-12-17 23:04:59.916416126 +0100
+@@ -17,6 +17,12 @@
+ /* All drivers using the mi colormap manipulation need this */
+ #include "micmap.h"
+ 
++#ifdef RANDR
++#include "randrstr.h"
++#endif
++
++#include "windowstr.h"
++
+ /* identifying atom needed by magnifiers */
+ #include <X11/Xatom.h>
+ #include "property.h"
+@@ -115,11 +121,15 @@
+ };
+ 
+ typedef enum {
+-    OPTION_SW_CURSOR
++    OPTION_SW_CURSOR,
++    OPTION_CONSTANT_DPI
+ } DUMMYOpts;
+ 
+ static const OptionInfoRec DUMMYOptions[] = {
+     { OPTION_SW_CURSOR,	"SWcursor",	OPTV_BOOLEAN,	{0}, FALSE },
++#ifdef RANDR
++    { OPTION_CONSTANT_DPI,	"ConstantDPI",	OPTV_BOOLEAN,	{0}, FALSE },
++#endif
+     { -1,                  NULL,           OPTV_NONE,	{0}, FALSE }
+ };
+ 
+@@ -359,6 +369,7 @@
+     xf86ProcessOptions(pScrn->scrnIndex, pScrn->options, dPtr->Options);
+ 
+     xf86GetOptValBool(dPtr->Options, OPTION_SW_CURSOR,&dPtr->swCursor);
++    xf86GetOptValBool(dPtr->Options, OPTION_CONSTANT_DPI, &dPtr->constantDPI);
+ 
+     if (device->videoRam != 0) {
+ 	pScrn->videoRam = device->videoRam;
+@@ -639,10 +650,45 @@
+     return TRUE;
+ }
+ 
++const char *XDPY_PROPERTY = "dummy-constant-xdpi";
++const char *YDPY_PROPERTY = "dummy-constant-ydpi";
++static int get_dpi_value(WindowPtr root, const char *property_name, int default_dpi)
++{
++    PropertyPtr prop;
++    Atom type_atom = MakeAtom("CARDINAL", 8, TRUE);
++    Atom prop_atom = MakeAtom(property_name, strlen(property_name), FALSE);
++
++    for (prop = wUserProps(root); prop; prop = prop->next) {
++       if (prop->propertyName == prop_atom && prop->type == type_atom && prop->data) {
++           int v = (int) (*((CARD32 *) prop->data));
++           if ((v>0) && (v<4096)) {
++               xf86DrvMsg(0, X_INFO, "get_constant_dpi_value() found property \"%s\" with value=%i\n", property_name, (int) v);
++               return (int) v;
++           }
++           break;
++       }
++    }
++    return default_dpi;
++}
++
+ /* Mandatory */
+ Bool
+ DUMMYSwitchMode(SWITCH_MODE_ARGS_DECL)
+ {
++    SCRN_INFO_PTR(arg);
++#ifdef RANDR
++    DUMMYPtr dPtr = DUMMYPTR(pScrn);
++    if (dPtr->constantDPI) {
++        int xDpi = get_dpi_value(pScrn->pScreen->root, XDPY_PROPERTY, pScrn->xDpi);
++        int yDpi = get_dpi_value(pScrn->pScreen->root, YDPY_PROPERTY, pScrn->yDpi);
++        //25.4 mm per inch: (254/10)
++        pScrn->pScreen->mmWidth = mode->HDisplay * 254 / xDpi / 10;
++        pScrn->pScreen->mmHeight = mode->VDisplay * 254 / yDpi / 10;
++        xf86DrvMsg(pScrn->scrnIndex, X_INFO, "mm(dpi %ix%i)=%ix%i\n", xDpi, yDpi, pScrn->pScreen->mmWidth, pScrn->pScreen->mmHeight);
++        RRScreenSizeNotify(pScrn->pScreen);
++        RRTellChanged(pScrn->pScreen);
++    }
++#endif
+     return TRUE;
+ }
+ 
diff --git a/Golden_Repo/x/XServer/0003-fix-pointer-limits.patch b/Golden_Repo/x/XServer/0003-fix-pointer-limits.patch
new file mode 100644
index 0000000000000000000000000000000000000000..3dbb6fd179ffde507036c62700c004914acc5cfb
--- /dev/null
+++ b/Golden_Repo/x/XServer/0003-fix-pointer-limits.patch
@@ -0,0 +1,39 @@
+--- xf86-video-dummy-0.3.6/src/dummy_driver.c	2014-11-05 19:24:02.668656601 +0700
++++ xf86-video-dummy-0.3.6.new/src/dummy_driver.c	2014-11-05 19:37:53.076061853 +0700
+@@ -55,6 +55,9 @@
+ #include <X11/extensions/xf86dgaproto.h>
+ #endif
+ 
++/* Needed for fixing pointer limits on resize */
++#include "inputstr.h"
++
+ /* Mandatory functions */
+ static const OptionInfoRec *	DUMMYAvailableOptions(int chipid, int busid);
+ static void     DUMMYIdentify(int flags);
+@@ -713,6 +716,26 @@
+         RRTellChanged(pScrn->pScreen);
+     }
+ #endif
++    //ensure the screen dimensions are also updated:
++    pScrn->pScreen->width = mode->HDisplay;
++    pScrn->pScreen->height = mode->VDisplay;
++    pScrn->virtualX = mode->HDisplay;
++    pScrn->virtualY = mode->VDisplay;
++    pScrn->frameX1 = mode->HDisplay;
++    pScrn->frameY1 = mode->VDisplay;
++
++    //ensure the pointer uses the new limits too:
++    DeviceIntPtr pDev;
++    SpritePtr pSprite;
++    for (pDev = inputInfo.devices; pDev; pDev = pDev->next) {
++        if (pDev->spriteInfo!=NULL && pDev->spriteInfo->sprite!=NULL) {
++            pSprite = pDev->spriteInfo->sprite;
++            pSprite->hotLimits.x2 = mode->HDisplay;
++            pSprite->hotLimits.y2 = mode->VDisplay;
++            pSprite->physLimits.x2 = mode->HDisplay;
++            pSprite->physLimits.y2 = mode->VDisplay;
++        }
++    }
+     return TRUE;
+ }
+ 
diff --git a/Golden_Repo/x/XServer/XServer-21.1.6-GCCcore-11.3.0.eb b/Golden_Repo/x/XServer/XServer-21.1.6-GCCcore-11.3.0.eb
new file mode 100644
index 0000000000000000000000000000000000000000..52e47fdb3bf7a8ca3c704a8690f534ae3070d847
--- /dev/null
+++ b/Golden_Repo/x/XServer/XServer-21.1.6-GCCcore-11.3.0.eb
@@ -0,0 +1,280 @@
+easyblock = 'Bundle'
+
+name = 'XServer'
+version = '21.1.6'
+
+homepage = 'https://www.x.org'
+
+description = """
+XServer: X Window System display server.
+
+This module provides a stripped-down installation with minimal driver support.
+"""
+
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = [
+    'https://www.x.org/archive/individual/xserver/',
+    'https://www.x.org/archive/individual/driver/'
+]
+
+# OS dependency should be preferred for security reasons
+osdependencies = [
+    ('openssl-devel', 'libssl-dev', 'libopenssl-devel'),
+]
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('pkgconf', '1.8.0'),
+    ('Bison', '3.8.2'),
+    ('Meson', '0.62.1'),
+    ('Ninja', '1.10.2'),
+    ('flex', '2.6.4'),
+    ('Bison', '3.8.2'),
+]
+
+dependencies = [
+    ('libdrm', '2.4.110'),
+    ('OpenGL', '2022a'),
+    ('pixman', '0.40.0'),
+    ('X11', '20220504'),
+    ('freetype', '2.12.1'),
+    ('fontconfig', '2.14.0'),
+    ('ncurses', '6.3'),
+    ('libepoxy', '1.5.10'),
+    ('eudev', '3.2.11'),
+    ('libtirpc', '1.3.2'),
+]
+
+local_font_preconfigopts = "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && "
+local_font_preconfigopts += "export PATH=%(installdir)s/bin:$PATH && "
+local_font_preconfigopts += "export FONTCONFIG_FILE=%(installdir)s/config/fontconfig/fonts.conf && "
+
+# https://github.com/freedesktop/xorg-xserver/blob/master/meson_options.txt
+local_xorg_configopts = "-D default_font_path=%(installdir)s/share/fonts/X11 "
+local_xorg_configopts += "-D xorg=true "
+local_xorg_configopts += "-D xvfb=true "
+local_xorg_configopts += "-D xnest=true "
+local_xorg_configopts += "-D xephyr=true "
+local_xorg_configopts += "-D udev=true "
+local_xorg_configopts += "-D glamor=true "
+local_xorg_configopts += "-D systemd_logind=false "
+# local_xorg_configopts += "-D suid_wrapper=true "
+local_xorg_configopts += "-D xkb_dir=%(installdir)s/share/X11/xkb "
+# local_xorg_configopts += "-D xkb_output_dir=/var/lib/xkb "
+
+default_easyblock = 'ConfigureMake'
+
+default_component_specs = {
+    'sources': [SOURCE_TAR_GZ],
+    'start_dir': '%(name)s-%(version)s',
+}
+
+components = [
+    ('fontconfig-config', '1.0.0', {
+        'easyblock': 'Binary',
+        'source_urls': ['https://gitlab.version.fz-juelich.de/goebbert1/fontconfig-config/-/archive/v%(version)s/'],
+        'sources': ['%(name)s-v%(version)s.tar.gz'],
+        'start_dir': '%(name)s-v%(version)s',
+        'extract_sources': True,
+        'install_cmd': (
+            'cp -a %(builddir)s/%(name)s-v%(version)s/* %(installdir)s/ && '
+            'sed -i \'s@$EBROOTXSERVER@\'"%(installdir)s"\'@g\' %(installdir)s/share/X11/xorg.conf.d/99-fonts.conf'
+        ),
+        'checksums': [('sha256', '68544c183d153f34105fa08573174650bfe643a6d750bd9da4accac399d375db')],
+        # to activate this fontconfig you need to export FONTCONFIG_FILE=${EBROOTXSERVER}/config/fontconfig/fonts.conf
+    }),
+    ('mkfontscale', '1.2.2', {
+        'source_urls': ['https://www.x.org/archive/individual/app/'],
+        'checksums': ['4a5af55e670713024639a7f7d10826d905d86faf574cd77e0f5aef2d00e70168'],
+    }),
+    ('mkfontdir', '1.0.7', {
+        'source_urls': ['https://www.x.org/archive/individual/app/'],
+        'checksums': ['bccc5fb7af1b614eabe4a22766758c87bfc36d66191d08c19d2fa97674b7b5b7'],
+    }),
+    ('bdftopcf', '1.1', {
+        'source_urls': ['https://www.x.org/archive/individual/app/'],
+        'checksums': ['699d1a62012035b1461c7f8e3f05a51c8bd6f28f348983249fb89bbff7309b47'],
+    }),
+    ('font-util', '1.3.3', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', '2094dd4a1ca63a61deb101d2dc618682d6e287cdbe09679502223ac445d277dc')],
+    }),
+    ('encodings', '1.0.6', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', 'c89c0636cda8f34eb28304263fc9a5441635ac3cb9da23efefe8f584174cba29')],
+    }),
+    ('font-alias', '1.0.4', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', '49525fa6f2c3f3b54f461b2e0649b0ac61af50c36bf40069355a25ced8ce2028')],
+    }),
+    ('dejavu', '2.37', {
+        'easyblock': 'Binary',
+        'source_urls': [SOURCEFORGE_SOURCE],
+        'sources': ['%(name)s-fonts-ttf-%(version)s.tar.bz2'],
+        'extract_sources': True,
+        'start_dir': 'dejavu-fonts-ttf-2.37',
+        'install_cmd': ('install -v -d -m755 %(installdir)s/share/fonts/dejavu && '
+                        'install -v -m644 ttf/*.ttf %(installdir)s/share/fonts/dejavu'),
+        'checksums': [('sha256', 'fa9ca4d13871dd122f61258a80d01751d603b4d3ee14095d65453b4e846e17d7')],
+        'preconfigopts': local_font_preconfigopts,
+    }),
+    ('font-adobe-75dpi', '1.0.3', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', '61eb1fcfec89f7435cb92cd68712fbe4ba412ca562b1f5feec1f6daa1b8544f6')],
+        'preconfigopts': local_font_preconfigopts,
+    }),
+    ('font-adobe-100dpi', '1.0.3', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', '97d9c1e706938838e4134d74f0836ae9d9ca6705ecb405c9a0ac8fdcbd9c2159')],
+        'preconfigopts': local_font_preconfigopts,
+    }),
+    ('font-cursor-misc', '1.0.3', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', 'a0b146139363dd0a704c7265ff9cd9150d4ae7c0d248091a9a42093e1618c427')],
+        'preconfigopts': local_font_preconfigopts,
+    }),
+    ('font-adobe-utopia-type1', '1.0.4', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', 'd9e86a8805b0fb78222409169d839a8531a1f5c7284ee117ff2a0af2e5016c3f')],
+        'preconfigopts': local_font_preconfigopts,
+    }),
+    ('font-misc-misc', '1.1.2', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', '46142c876e176036c61c0c24c0a689079704d5ca5b510d48c025861ee2dbf829')],
+        'preconfigopts': local_font_preconfigopts,
+    }),
+    #  Fails because it tries to create a directory outside of %(installdir)s
+    #  => test -z "<PKG_CONFIG-Fontconfig>/etc/fonts/conf.avail" ||
+    #              /usr/bin/mkdir -p "<PKG_CONFIG-Fontconfig>/etc/fonts/conf.avail"
+    # ('font-bh-ttf', '1.0.3', {
+    #     'source_urls': ['https://www.x.org/pub/individual/font/'],
+    #     'sources': ['%(name)s-%(version)s.tar.gz'],
+    #     'checksums': [('sha256', 'c583b4b968ffae6ea30d5b74041afeac83126682c490a9624b770d60d0e63d59')],
+    #     'preconfigopts': local_font_preconfigopts,
+    # }),
+    ('font-bh-type1', '1.0.3', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', 'd5602f1d749ccd31d3bc1bb6f0c5d77400de0e5e3ac5abebd2a867aa2a4081a4')],
+        'preconfigopts': local_font_preconfigopts,
+    }),
+    ('font-ibm-type1', '1.0.3', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', '4509703e9e581061309cf4823bffd4a93f10f48fe192a1d8be1f183fd6ab9711')],
+        'preconfigopts': local_font_preconfigopts,
+    }),
+    ('font-misc-ethiopic', '1.0.4', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', 'f7901250fb746815065cfe13a814d92260348fede28d61dcab0d05c5d8eafd54')],
+        'preconfigopts': local_font_preconfigopts,
+    }),
+    ('font-xfree86-type1', '1.0.4', {
+        'source_urls': ['https://www.x.org/pub/individual/font/'],
+        'sources': ['%(name)s-%(version)s.tar.gz'],
+        'checksums': [('sha256', '02b3839ae79ba6a7750525bb3b0c281305664b95bf63b4a0baa230a277b4f928')],
+        'preconfigopts': local_font_preconfigopts,
+    }),
+    ('xkbcomp', '1.4.6', {
+        'source_urls': ['https://www.x.org/archive//individual/app/'],
+        'checksums': ['b216a2c8c0eab83f3dc4a3d5ee2bdf7827b30e49c8907035d0f222138eca0987'],
+    }),
+    ('xkeyboard-config', '2.38', {
+        'easyblock': 'MesonNinja',
+        'source_urls': ['https://www.x.org/archive//individual/data/xkeyboard-config/'],
+        'sources': ['%(name)s-%(version)s.tar.xz'],
+        'checksums': ['0690a91bab86b18868f3eee6d41e9ec4ce6894f655443d490a2184bfac56c872'],
+        # https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/blob/master/meson_options.txt
+        'configopts': '-Dxorg-rules-symlinks=true',
+    }),
+    ('xauth', '1.1', {
+        'source_urls': ['https://www.x.org/releases/individual/app/'],
+        'checksums': ['e9fce796c8c5c9368594b9e8bbba237fb54b6615f5fd60e8d0a5b3c52a92c5ef'],
+    }),
+    ('libxcvt', '0.1.2', {
+        'easyblock': 'MesonNinja',
+        'source_urls': ['https://www.x.org/archive/individual/lib/'],
+        'sources': [SOURCE_TAR_XZ],
+        'checksums': ['0561690544796e25cfbd71806ba1b0d797ffe464e9796411123e79450f71db38'],
+    }),
+    ('xorg-server', version, {
+        'easyblock': 'MesonNinja',
+        'patches': [('xvfb-run', '.')],
+        'checksums': [
+            ('sha256', '6f9c73ccc50e2731adac17671c8e33687738c8cd556b49ecb9f410ce7217be11'),
+            ('sha256', 'fd6d13182b77871d4f65fccdaebb8a72387a726426066d3f8e6aa26b010ea0e8'),
+        ],
+        'configopts': local_xorg_configopts,
+    }),
+    ('xf86-video-dummy', '0.4.0', {
+        'preconfigopts': 'PKG_CONFIG_PATH=$PKG_CONFIG_PATH:%(installdir)s/lib/pkgconfig',
+        'sources': ['%(name)s-%(version)s.tar.xz'],
+        'checksums': [
+            # xf86-video-dummy-0.4.0.tar.gz
+            ('sha256', 'e78ceae5c8c0588c7cb658f2afc3a9fac9ef665b52a75b01f8e9c5449a4e1e5a'),
+            # 0002-Constant-DPI.patch
+            ('sha256', '3add13392168d271822e694aba21327dc3219f61f2091a12ef7009d3f090c662'),
+            # 0003-fix-pointer-limits.patch
+            ('sha256', '8af95b0b0e7f4d7de3bd1654260c3677d76ef91b8d6a66cb57b9c3af1e024fa2'),
+        ],
+        'patches': [
+            '0002-Constant-DPI.patch',
+            '0003-fix-pointer-limits.patch',
+        ],
+    }),
+    ('xterm', '378', {
+        'source_urls': ['http://invisible-mirror.net/archives/xterm/'],
+        'sources': ['%(name)s-%(version)s.tgz'],
+        'checksums': [
+            # xterm-369.tgz
+            ('sha256', '649dfbfd5edd0ed9e47cf8e4d953b4b0d3c30bc280166dfc4ffd14973fec3e92'),
+            # xterm-cursesloc.patch
+            ('sha256', 'ff15331ba1a2c67f68e3da3595ffc457d7aea5392a75d8cdfe40e2126ece99a2'),
+        ],
+        'patches': ['xterm-cursesloc.patch'],
+        'configopts': " --with-app-defaults=%(installdir)s/app-defaults ",
+    }),
+]
+
+# we need to set the permissions our self to ensure no-one messes in this directory
+# FIXME: easybuild does not support this in 4.3.0 -> hence you have to do it manually
+skipsteps = ['permissions']
+postinstallcmds = [
+    'chmod -R ugo-w %(installdir)s/config',
+    'chmod -R ugo-w %(installdir)s/share',
+    'install -m 0755 %(builddir)s/xorg-server-%(version)s/xvfb-run %(installdir)s/bin/',
+]
+
+modextrapaths = {
+    'XDG_CONFIG_DIRS': 'config',
+    'XUSERFILESEARCHPATH': 'app-defaults/%N-%C',
+}
+
+# FONTCONFIG_FILE is used to override the default configuration file
+modextravars = {
+    'FONTCONFIG_FILE': '%(installdir)s/config/fontconfig/fonts.conf'}
+
+sanity_check_paths = {
+    'files': ['bin/Xorg', 'bin/Xvfb', 'bin/xvfb-run',
+              'lib/xorg/modules/drivers/dummy_drv.la', 'lib/xorg/modules/drivers/dummy_drv.so',
+              'bin/xterm'],
+    'dirs': [],
+}
+
+sanity_check_commands = [
+    "xvfb-run --help",
+    "xvfb-run --error-file %(builddir)s/xvfb-run-test.err echo hello",
+]
+
+moduleclass = 'vis'
diff --git a/Golden_Repo/x/XServer/xterm-cursesloc.patch b/Golden_Repo/x/XServer/xterm-cursesloc.patch
new file mode 100644
index 0000000000000000000000000000000000000000..033c2776b7838ae1907a69f31d75d7ce7d28175f
--- /dev/null
+++ b/Golden_Repo/x/XServer/xterm-cursesloc.patch
@@ -0,0 +1,12 @@
+diff -Naur xterm-362.orig/xtermcap.h xterm-362/xtermcap.h
+--- xterm-362.orig/xtermcap.h	2013-06-23 17:34:37.000000000 +0200
++++ xterm-362/xtermcap.h	2021-02-16 14:00:48.976219215 +0100
+@@ -59,7 +59,7 @@
+ #undef ERR			/* workaround for glibc 2.1.3 */
+ 
+ #ifdef HAVE_NCURSES_CURSES_H
+-#include <ncurses/curses.h>
++#include <curses.h>
+ #else
+ #include <curses.h>
+ #endif
diff --git a/Golden_Repo/x/XServer/xvfb-run b/Golden_Repo/x/XServer/xvfb-run
new file mode 100644
index 0000000000000000000000000000000000000000..237e0dfc5938430d50fe8d30fde1b6defa9c6e42
--- /dev/null
+++ b/Golden_Repo/x/XServer/xvfb-run
@@ -0,0 +1,194 @@
+#!/bin/sh
+
+# extracted from Debian package for xorg-server,
+# via http://deb.debian.org/debian/pool/main/x/xorg-server/xorg-server_1.20.4-1.diff.gz
+
+# This script starts an instance of Xvfb, the "fake" X server, runs a command
+# with that server available, and kills the X server when done.  The return
+# value of the command becomes the return value of this script.
+#
+# If anyone is using this to build a Debian package, make sure the package
+# Build-Depends on xvfb and xauth.
+
+set -e
+
+PROGNAME=xvfb-run
+SERVERNUM=99
+AUTHFILE=
+ERRORFILE=/dev/null
+XVFBARGS="-screen 0 1280x1024x24"
+LISTENTCP="-nolisten tcp"
+XAUTHPROTO=.
+
+# Query the terminal to establish a default number of columns to use for
+# displaying messages to the user.  This is used only as a fallback in the event
+# the COLUMNS variable is not set.  ($COLUMNS can react to SIGWINCH while the
+# script is running, and this cannot, only being calculated once.)
+DEFCOLUMNS=$(stty size 2>/dev/null | awk '{print $2}') || true
+case "$DEFCOLUMNS" in
+    *[!0-9]*|'') DEFCOLUMNS=80 ;;
+esac
+
+# Display a message, wrapping lines at the terminal width.
+message () {
+    echo "$PROGNAME: $*" | fmt -t -w ${COLUMNS:-$DEFCOLUMNS}
+}
+
+# Display an error message.
+error () {
+    message "error: $*" >&2
+}
+
+# Display a usage message.
+usage () {
+    if [ -n "$*" ]; then
+        message "usage error: $*"
+    fi
+    cat <<EOF
+Usage: $PROGNAME [OPTION ...] COMMAND
+Run COMMAND (usually an X client) in a virtual X server environment.
+Options:
+-a        --auto-servernum          try to get a free server number, starting at
+                                    --server-num
+-e FILE   --error-file=FILE         file used to store xauth errors and Xvfb
+                                    output (default: $ERRORFILE)
+-f FILE   --auth-file=FILE          file used to store auth cookie
+                                    (default: ./.Xauthority)
+-h        --help                    display this usage message and exit
+-n NUM    --server-num=NUM          server number to use (default: $SERVERNUM)
+-l        --listen-tcp              enable TCP port listening in the X server
+-p PROTO  --xauth-protocol=PROTO    X authority protocol name to use
+                                    (default: xauth command's default)
+-s ARGS   --server-args=ARGS        arguments (other than server number and
+                                    "-nolisten tcp") to pass to the Xvfb server
+                                    (default: "$XVFBARGS")
+EOF
+}
+
+# Find a free server number by looking at .X*-lock files in /tmp.
+find_free_servernum() {
+    # Sadly, the "local" keyword is not POSIX.  Leave the next line commented in
+    # the hope Debian Policy eventually changes to allow it in /bin/sh scripts
+    # anyway.
+    #local i
+
+    i=$SERVERNUM
+    while [ -f /tmp/.X$i-lock ]; do
+        i=$(($i + 1))
+    done
+    echo $i
+}
+
+# Clean up files
+clean_up() {
+    if [ -e "$AUTHFILE" ]; then
+        XAUTHORITY=$AUTHFILE xauth remove ":$SERVERNUM" >>"$ERRORFILE" 2>&1
+    fi
+    if [ -n "$XVFB_RUN_TMPDIR" ]; then
+        if ! rm -r "$XVFB_RUN_TMPDIR"; then
+            error "problem while cleaning up temporary directory"
+            exit 5
+        fi
+    fi
+    if [ -n "$XVFBPID" ]; then
+        kill "$XVFBPID" >>"$ERRORFILE" 2>&1
+    fi
+}
+
+# Parse the command line.
+ARGS=$(getopt --options +ae:f:hn:lp:s:w: \
+       --long auto-servernum,error-file:,auth-file:,help,server-num:,listen-tcp,xauth-protocol:,server-args:,wait: \
+       --name "$PROGNAME" -- "$@")
+GETOPT_STATUS=$?
+
+if [ $GETOPT_STATUS -ne 0 ]; then
+    error "internal error; getopt exited with status $GETOPT_STATUS"
+    exit 6
+fi
+
+eval set -- "$ARGS"
+
+while :; do
+    case "$1" in
+        -a|--auto-servernum) SERVERNUM=$(find_free_servernum); AUTONUM="yes" ;;
+        -e|--error-file) ERRORFILE="$2"; shift ;;
+        -f|--auth-file) AUTHFILE="$2"; shift ;;
+        -h|--help) SHOWHELP="yes" ;;
+        -n|--server-num) SERVERNUM="$2"; shift ;;
+        -l|--listen-tcp) LISTENTCP="" ;;
+        -p|--xauth-protocol) XAUTHPROTO="$2"; shift ;;
+        -s|--server-args) XVFBARGS="$2"; shift ;;
+        -w|--wait) shift ;;
+        --) shift; break ;;
+        *) error "internal error; getopt permitted \"$1\" unexpectedly"
+           exit 6
+           ;;
+    esac
+    shift
+done
+
+if [ "$SHOWHELP" ]; then
+    usage
+    exit 0
+fi
+
+if [ -z "$*" ]; then
+    usage "need a command to run" >&2
+    exit 2
+fi
+
+if ! command -v xauth >/dev/null; then
+    error "xauth command not found"
+    exit 3
+fi
+
+# tidy up after ourselves
+trap clean_up EXIT
+
+# If the user did not specify an X authorization file to use, set up a temporary
+# directory to house one.
+if [ -z "$AUTHFILE" ]; then
+    XVFB_RUN_TMPDIR="$(mktemp -d -t $PROGNAME.XXXXXX)"
+    AUTHFILE="$XVFB_RUN_TMPDIR/Xauthority"
+    # Create empty file to avoid xauth warning
+    touch "$AUTHFILE"
+fi
+
+# Start Xvfb.
+MCOOKIE=$(mcookie)
+tries=10
+while [ $tries -gt 0 ]; do
+    tries=$(( $tries - 1 ))
+    XAUTHORITY=$AUTHFILE xauth source - << EOF >>"$ERRORFILE" 2>&1
+add :$SERVERNUM $XAUTHPROTO $MCOOKIE
+EOF
+    # handle SIGUSR1 so Xvfb knows to send a signal when it's ready to accept
+    # connections
+    trap : USR1
+    (trap '' USR1; exec Xvfb ":$SERVERNUM" $XVFBARGS $LISTENTCP -auth $AUTHFILE >>"$ERRORFILE" 2>&1) &
+    XVFBPID=$!
+
+    wait || :
+    if kill -0 $XVFBPID 2>/dev/null; then
+        break
+    elif [ -n "$AUTONUM" ]; then
+        # The display is in use so try another one (if '-a' was specified).
+        SERVERNUM=$((SERVERNUM + 1))
+        SERVERNUM=$(find_free_servernum)
+        continue
+    fi
+    error "Xvfb failed to start" >&2
+    XVFBPID=
+    exit 1
+done
+
+# Start the command and save its exit status.
+set +e
+DISPLAY=:$SERVERNUM XAUTHORITY=$AUTHFILE "$@"
+RETVAL=$?
+set -e
+
+# Return the executed command's exit status.
+exit $RETVAL
+
+# vim:set ai et sts=4 sw=4 tw=80:
diff --git a/acls.yml b/acls.yml
index bbeabbf0d3013f741809620ca09846d4cbb68ffd..6a0c33925638b3aef07e2e0a17012c1f1d1e3cd4 100644
--- a/acls.yml
+++ b/acls.yml
@@ -103,7 +103,7 @@ software:
     base: True
   - name: 'Embree'
     owner: 'goebbert1'
-    base: True
+    compiler: True
   - name: 'freeglut'
     owner: 'goebbert1'
     base: True