summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/Makefile1
-rw-r--r--packages/x/Makefile74
-rw-r--r--packages/x/Vulkan/Makefile31
-rw-r--r--packages/x/Vulkan/Vulkan-Docs/Makefile59
-rw-r--r--packages/x/Vulkan/Vulkan-ExtensionLayer-sdk/Makefile59
-rw-r--r--packages/x/Vulkan/Vulkan-Headers-sdk/Makefile59
-rw-r--r--packages/x/Vulkan/Vulkan-Loader-sdk/Makefile59
-rw-r--r--packages/x/Vulkan/Vulkan-LunarG-Tools-sdk/Makefile65
-rw-r--r--packages/x/Vulkan/Vulkan-Tools-sdk/Makefile59
-rw-r--r--packages/x/Vulkan/Vulkan-ValidationLayers-sdk/Makefile59
-rw-r--r--packages/x/Vulkan/gfxreconstruct/Makefile65
-rw-r--r--packages/x/WindowMaker/Makefile73
-rw-r--r--packages/x/conky/Makefile63
-rw-r--r--packages/x/dejavu-fonts-ttf/Makefile44
-rw-r--r--packages/x/dejavu-fonts/Makefile75
-rw-r--r--packages/x/desktop-file-utils/Makefile39
-rw-r--r--packages/x/feh/Makefile63
-rw-r--r--packages/x/fontconfig/Makefile39
-rw-r--r--packages/x/fonts-tlwg/Makefile24
-rw-r--r--packages/x/fonts-tlwg/ttf-tlwg/Makefile39
-rw-r--r--packages/x/freeglut/Makefile63
-rw-r--r--packages/x/gimp/Makefile47
-rw-r--r--packages/x/glew/Makefile40
-rw-r--r--packages/x/glu/Makefile39
-rw-r--r--packages/x/gst-plugins-bad/Makefile41
-rw-r--r--packages/x/gst-plugins-base/Makefile42
-rw-r--r--packages/x/gst-plugins-good/Makefile41
-rw-r--r--packages/x/gst-plugins-ugly/Makefile41
-rw-r--r--packages/x/gstreamer/Makefile41
-rw-r--r--packages/x/hicolor-icon-theme/Makefile74
-rw-r--r--packages/x/libdrm/Makefile39
-rw-r--r--packages/x/libepoxy/Makefile65
-rw-r--r--packages/x/liberation-fonts-ttf/Makefile44
-rw-r--r--packages/x/liberation-fonts/Makefile72
-rw-r--r--packages/x/libevdev/Makefile39
-rw-r--r--packages/x/libglvnd/Makefile71
-rw-r--r--packages/x/libinput/Makefile63
-rw-r--r--packages/x/libtxc_dxtn/Makefile44
-rw-r--r--packages/x/libvdpau/Makefile67
-rw-r--r--packages/x/libwacom/Makefile69
-rw-r--r--packages/x/libxkbcommon/Makefile39
-rw-r--r--packages/x/lxappearance-obconf/Makefile39
-rw-r--r--packages/x/lxappearance/Makefile39
-rw-r--r--packages/x/lxinput/Makefile39
-rw-r--r--packages/x/mesa-demos/Makefile40
-rw-r--r--packages/x/mesa/21.x/Makefile75
-rw-r--r--packages/x/mesa/22.x/Makefile39
-rw-r--r--packages/x/mesa/Makefile25
-rw-r--r--packages/x/mozilla-firefox/Makefile41
-rw-r--r--packages/x/mozilla-thunderbird/Makefile41
-rw-r--r--packages/x/mtdev/Makefile39
-rw-r--r--packages/x/nitrogen/Makefile67
-rw-r--r--packages/x/obconf/Makefile39
-rw-r--r--packages/x/openbox/Makefile67
-rw-r--r--packages/x/pyxdg/Makefile63
-rw-r--r--packages/x/qt5/Makefile76
-rw-r--r--packages/x/startup-notification/Makefile39
-rw-r--r--packages/x/terminus-font/Makefile40
-rw-r--r--packages/x/thaixfonts/Makefile40
-rw-r--r--packages/x/tint2/Makefile63
-rw-r--r--packages/x/vaapi/Makefile26
-rw-r--r--packages/x/vaapi/intel-vaapi-driver/Makefile74
-rw-r--r--packages/x/vaapi/libva-vdpau-driver/Makefile39
-rw-r--r--packages/x/vaapi/libva/Makefile72
-rw-r--r--packages/x/xdg-user-dirs/Makefile39
-rw-r--r--packages/x/xdg-utils/Makefile77
-rw-r--r--packages/x/xterm/Makefile39
67 files changed, 3407 insertions, 0 deletions
diff --git a/packages/Makefile b/packages/Makefile
index 012cafa..a72fa5c 100644
--- a/packages/Makefile
+++ b/packages/Makefile
@@ -7,6 +7,7 @@
SUBDIRS := b \
d \
s \
+ x \
y
diff --git a/packages/x/Makefile b/packages/x/Makefile
new file mode 100644
index 0000000..ae0b3d1
--- /dev/null
+++ b/packages/x/Makefile
@@ -0,0 +1,74 @@
+
+#
+# Following command helps to cheate SUBDIRS list:
+# $ tree -fid .
+#
+
+SUBDIRS := Vulkan \
+ WindowMaker \
+ conky \
+ dejavu-fonts \
+ dejavu-fonts-ttf \
+ desktop-file-utils \
+ feh \
+ fontconfig \
+ fonts-tlwg \
+ freeglut \
+ gimp \
+ glew \
+ glu \
+ gst-plugins-bad \
+ gst-plugins-base \
+ gst-plugins-good \
+ gst-plugins-ugly \
+ gstreamer \
+ hicolor-icon-theme \
+ libdrm \
+ libepoxy \
+ liberation-fonts \
+ liberation-fonts-ttf \
+ libevdev \
+ libglvnd \
+ libinput \
+ libtxc_dxtn \
+ libvdpau \
+ libwacom \
+ libxkbcommon \
+ lxappearance \
+ lxappearance-obconf \
+ lxinput \
+ mesa \
+ mesa-demos \
+ mozilla-firefox \
+ mozilla-thunderbird \
+ mtdev \
+ nitrogen \
+ obconf \
+ openbox \
+ pyxdg \
+ qt5 \
+ startup-notification \
+ terminus-font \
+ thaixfonts \
+ tint2 \
+ vaapi \
+ xdg-user-dirs \
+ xdg-utils \
+ xterm
+
+
+all-recursive downloads_clean-recursive:
+ @set fnord $(MAKEFLAGS); amf=$$2; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ local_target="$$target"; \
+ (cd $$subdir && $(MAKE) $$fnord $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done; test -z "$$fail"
+
+all: all-recursive
+
+downloads_clean: downloads_clean-recursive
+
+.PHONY: all-recursive downloads_clean-recursive all downloads_clean
diff --git a/packages/x/Vulkan/Makefile b/packages/x/Vulkan/Makefile
new file mode 100644
index 0000000..32d0809
--- /dev/null
+++ b/packages/x/Vulkan/Makefile
@@ -0,0 +1,31 @@
+
+#
+# Following command helps to cheate SUBDIRS list:
+# $ tree -fid .
+#
+
+SUBDIRS := Vulkan-Docs \
+ Vulkan-ExtensionLayer-sdk \
+ Vulkan-Headers-sdk \
+ Vulkan-Loader-sdk \
+ Vulkan-LunarG-Tools-sdk \
+ Vulkan-Tools-sdk \
+ Vulkan-ValidationLayers-sdk \
+ gfxreconstruct
+
+
+all-recursive downloads_clean-recursive:
+ @set fnord $(MAKEFLAGS); amf=$$2; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ local_target="$$target"; \
+ (cd $$subdir && $(MAKE) $$fnord $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done; test -z "$$fail"
+
+all: all-recursive
+
+downloads_clean: downloads_clean-recursive
+
+.PHONY: all-recursive downloads_clean-recursive all downloads_clean
diff --git a/packages/x/Vulkan/Vulkan-Docs/Makefile b/packages/x/Vulkan/Vulkan-Docs/Makefile
new file mode 100644
index 0000000..0da98a9
--- /dev/null
+++ b/packages/x/Vulkan/Vulkan-Docs/Makefile
@@ -0,0 +1,59 @@
+#
+# Project Home:
+# ============
+# https://github.com/KhronosGroup/Vulkan-Docs
+#
+# Clone:
+# =====
+# https://github.com/KhronosGroup/Vulkan-Docs.git
+#
+
+url = https://github.com/KhronosGroup
+
+repo_name = Vulkan-Docs
+pkg_name = vulkan-docs
+suffix = tar.xz
+
+versions = 1.3.239
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=v`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/Vulkan/Vulkan-ExtensionLayer-sdk/Makefile b/packages/x/Vulkan/Vulkan-ExtensionLayer-sdk/Makefile
new file mode 100644
index 0000000..f04bcc2
--- /dev/null
+++ b/packages/x/Vulkan/Vulkan-ExtensionLayer-sdk/Makefile
@@ -0,0 +1,59 @@
+#
+# Project Home:
+# ============
+# https://github.com/KhronosGroup/Vulkan-ExtensionLayer
+#
+# Clone:
+# =====
+# https://github.com/KhronosGroup/Vulkan-ExtensionLayer.git
+#
+
+url = https://github.com/KhronosGroup
+
+repo_name = Vulkan-ExtensionLayer
+pkg_name = vulkan-extension-layer-sdk
+suffix = tar.xz
+
+versions = 1.3.239.0
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=sdk-`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/Vulkan/Vulkan-Headers-sdk/Makefile b/packages/x/Vulkan/Vulkan-Headers-sdk/Makefile
new file mode 100644
index 0000000..829c527
--- /dev/null
+++ b/packages/x/Vulkan/Vulkan-Headers-sdk/Makefile
@@ -0,0 +1,59 @@
+#
+# Project Home:
+# ============
+# https://github.com/KhronosGroup/Vulkan-Headers
+#
+# Clone:
+# =====
+# https://github.com/KhronosGroup/Vulkan-Headers.git
+#
+
+url = https://github.com/KhronosGroup
+
+repo_name = Vulkan-Headers
+pkg_name = vulkan-headers-sdk
+suffix = tar.xz
+
+versions = 1.3.239.0
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=sdk-`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/Vulkan/Vulkan-Loader-sdk/Makefile b/packages/x/Vulkan/Vulkan-Loader-sdk/Makefile
new file mode 100644
index 0000000..8a04654
--- /dev/null
+++ b/packages/x/Vulkan/Vulkan-Loader-sdk/Makefile
@@ -0,0 +1,59 @@
+#
+# Project Home:
+# ============
+# https://github.com/KhronosGroup/Vulkan-Loader
+#
+# Clone:
+# =====
+# https://github.com/KhronosGroup/Vulkan-Loader.git
+#
+
+url = https://github.com/KhronosGroup
+
+repo_name = Vulkan-Loader
+pkg_name = vulkan-loader-sdk
+suffix = tar.xz
+
+versions = 1.3.239.0
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=sdk-`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/Vulkan/Vulkan-LunarG-Tools-sdk/Makefile b/packages/x/Vulkan/Vulkan-LunarG-Tools-sdk/Makefile
new file mode 100644
index 0000000..d93dda7
--- /dev/null
+++ b/packages/x/Vulkan/Vulkan-LunarG-Tools-sdk/Makefile
@@ -0,0 +1,65 @@
+#
+# Project Home:
+# ============
+# https://github.com/LunarG/VulkanTools
+#
+# Clone:
+# =====
+# https://github.com/LunarG/VulkanTools.git
+#
+
+url = https://github.com/LunarG
+
+repo_name = VulkanTools
+pkg_name = vulkan-lunarg-tools-sdk
+suffix = tar.xz
+
+versions = 1.3.239.0
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=sdk-`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) ; \
+ git submodule update --init ; \
+ git archive --format=tar --prefix=$(pkg_name)-$${version}/ --output=../$(pkg_name)-$${version}.tar $${tag} ; \
+ cmd="git submodule foreach --recursive 'git archive --format=tar --prefix=$(pkg_name)-$${version}/\$$sm_path/ HEAD --output=\$$toplevel/../$(pkg_name)-$${version}-sub-\$$sha1.tar'" ; \
+ eval $${cmd} ; \
+ ) ; \
+ tar --concatenate --file $(pkg_name)-$${version}.tar $(pkg_name)-$${version}-sub-*.tar ; \
+ rm -f $(pkg_name)-$${version}-sub-*.tar ; \
+ xz $(pkg_name)-$${version}.tar ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/Vulkan/Vulkan-Tools-sdk/Makefile b/packages/x/Vulkan/Vulkan-Tools-sdk/Makefile
new file mode 100644
index 0000000..487b632
--- /dev/null
+++ b/packages/x/Vulkan/Vulkan-Tools-sdk/Makefile
@@ -0,0 +1,59 @@
+#
+# Project Home:
+# ============
+# https://github.com/KhronosGroup/Vulkan-Tools
+#
+# Clone:
+# =====
+# https://github.com/KhronosGroup/Vulkan-Tools.git
+#
+
+url = https://github.com/KhronosGroup
+
+repo_name = Vulkan-Tools
+pkg_name = vulkan-tools-sdk
+suffix = tar.xz
+
+versions = 1.3.239.0
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=sdk-`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/Vulkan/Vulkan-ValidationLayers-sdk/Makefile b/packages/x/Vulkan/Vulkan-ValidationLayers-sdk/Makefile
new file mode 100644
index 0000000..1b41e15
--- /dev/null
+++ b/packages/x/Vulkan/Vulkan-ValidationLayers-sdk/Makefile
@@ -0,0 +1,59 @@
+#
+# Project Home:
+# ============
+# https://github.com/KhronosGroup/Vulkan-ValidationLayers
+#
+# Clone:
+# =====
+# https://github.com/KhronosGroup/Vulkan-ValidationLayers.git
+#
+
+url = https://github.com/KhronosGroup
+
+repo_name = Vulkan-ValidationLayers
+pkg_name = vulkan-validation-layers-sdk
+suffix = tar.xz
+
+versions = 1.3.239.0
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=sdk-`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/Vulkan/gfxreconstruct/Makefile b/packages/x/Vulkan/gfxreconstruct/Makefile
new file mode 100644
index 0000000..fb2a6af
--- /dev/null
+++ b/packages/x/Vulkan/gfxreconstruct/Makefile
@@ -0,0 +1,65 @@
+#
+# Project Home:
+# ============
+# https://github.com/LunarG/gfxreconstruct
+#
+# Clone:
+# =====
+# https://github.com/LunarG/gfxreconstruct.git
+#
+
+url = https://github.com/LunarG
+
+repo_name = gfxreconstruct
+pkg_name = gfxreconstruct
+suffix = tar.xz
+
+versions = 1.3.239.0
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=sdk-`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) ; \
+ git submodule update --init ; \
+ git archive --format=tar --prefix=$(pkg_name)-$${version}/ --output=../$(pkg_name)-$${version}.tar $${tag} ; \
+ cmd="git submodule foreach --recursive 'git archive --format=tar --prefix=$(pkg_name)-$${version}/\$$sm_path/ HEAD --output=\$$toplevel/../$(pkg_name)-$${version}-sub-\$$sha1.tar'" ; \
+ eval $${cmd} ; \
+ ) ; \
+ tar --concatenate --file $(pkg_name)-$${version}.tar $(pkg_name)-$${version}-sub-*.tar ; \
+ rm -f $(pkg_name)-$${version}-sub-*.tar ; \
+ xz $(pkg_name)-$${version}.tar ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/WindowMaker/Makefile b/packages/x/WindowMaker/Makefile
new file mode 100644
index 0000000..bba0b80
--- /dev/null
+++ b/packages/x/WindowMaker/Makefile
@@ -0,0 +1,73 @@
+#
+# Project Home:
+# ============
+# http://windowmaker.org
+#
+# Git:
+# ===
+# https://repo.or.cz/wmaker-crm.git
+#
+
+url = https://repo.or.cz
+
+repo_name = wmaker-crm
+pkg_name = WindowMaker
+
+#
+# List of 'amber' branch versions to be extracted:
+# ===============================================
+# hash | tag
+# ----------------------------------------+-----
+revisions = f9bc310fa686c226da42164ca04462e32a314b15:0.95.9
+
+git_repo = .git_clone
+
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ version=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(pkg_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$hash | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ tar xJf $(pkg_name)-$$version.$(suffix) ; \
+ ( cd $(pkg_name)-$$version ; ./autogen.sh ; rm -rf autom4te.cache ; rm -f .git* *~ ) ; \
+ tar cJf $(pkg_name)-$$version.$(suffix) $(pkg_name)-$$version ; \
+ rm -rf $(pkg_name)-$$version ; \
+ fi ; \
+ done
+
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/conky/Makefile b/packages/x/conky/Makefile
new file mode 100644
index 0000000..0a2b830
--- /dev/null
+++ b/packages/x/conky/Makefile
@@ -0,0 +1,63 @@
+#
+# Project Home:
+# ============
+# https://sourceforge.net/projects/conky
+#
+# GitHub:
+# ======
+# https://github.com/brndnmtthws/conky
+#
+# Clone:
+# =====
+# git clone https://github.com/brndnmtthws/conky.git
+#
+
+url = https://github.com/brndnmtthws
+
+repo_name = conky
+pkg_name = conky
+suffix = tar.xz
+
+versions = 1.18.3
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=v`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/dejavu-fonts-ttf/Makefile b/packages/x/dejavu-fonts-ttf/Makefile
new file mode 100644
index 0000000..e2c2590
--- /dev/null
+++ b/packages/x/dejavu-fonts-ttf/Makefile
@@ -0,0 +1,44 @@
+#
+# Project Home:
+# ============
+# https://dejavu-fonts.github.io
+#
+# Downloads:
+# =========
+# https://dejavu-fonts.github.io/Download.html
+#
+# GitHub:
+# ======
+# https://github.com/dejavu-fonts/dejavu-fonts/releases/download/version_2_37/dejavu-fonts-2.37-ttf.tar.bz2
+# https://ftp.radix.pro/3pp/fonts/dejavu
+#
+
+url = https://ftp.radix.pro/3pp/fonts/dejavu
+
+versions = 2.37
+
+pkg_name = dejavu-fonts-ttf
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/dejavu-fonts/Makefile b/packages/x/dejavu-fonts/Makefile
new file mode 100644
index 0000000..48349ac
--- /dev/null
+++ b/packages/x/dejavu-fonts/Makefile
@@ -0,0 +1,75 @@
+#
+# Project Home:
+# ============
+# https://dejavu-fonts.github.io
+#
+# Downloads:
+# =========
+# https://dejavu-fonts.github.io/Download.html
+#
+# GitHub:
+# ======
+# git clone https://github.com/dejavu-fonts/dejavu-fonts.git
+# https://github.com/dejavu-fonts/dejavu-fonts/releases/download/version_2_37/dejavu-fonts-2.37.tar.bz2
+#
+
+url = https://github.com/dejavu-fonts
+
+repo_name = dejavu-fonts
+pkg_name = dejavu-fonts
+
+#
+# List of tags to be extracted:
+# ============================
+# hash | tag
+# ----------------------------------------+-----
+revisions = e055422f2643c8dc4718fb2269daeb3f707ccc4b:2.35
+revisions += fd97ab8eb2b5f5bc41af2cce4583954b7d0903c2:2.36
+revisions += 0eda8a319c08835009849583cd090bb5b141ce25:2.37
+
+git_repo = .git_clone
+
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ version=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(pkg_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$hash | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/desktop-file-utils/Makefile b/packages/x/desktop-file-utils/Makefile
new file mode 100644
index 0000000..9dca63a
--- /dev/null
+++ b/packages/x/desktop-file-utils/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://www.freedesktop.org/wiki/Software/desktop-file-utils
+#
+# Downloads:
+# =========
+# https://www.freedesktop.org/software/desktop-file-utils/releases
+#
+
+url = https://www.freedesktop.org/software/desktop-file-utils/releases
+
+versions = 0.22 0.26
+
+pkgname = desktop-file-utils
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/feh/Makefile b/packages/x/feh/Makefile
new file mode 100644
index 0000000..46f4232
--- /dev/null
+++ b/packages/x/feh/Makefile
@@ -0,0 +1,63 @@
+#
+# Project Home:
+# ============
+# https://feh.finalrewind.org
+#
+# cGit:
+# ====
+# https://git.finalrewind.org/feh
+#
+# Clone:
+# =====
+# git clone https://git.finalrewind.org/feh.git
+#
+
+url = https://git.finalrewind.org
+
+repo_name = feh
+pkg_name = feh
+suffix = tar.xz
+
+versions = 3.9.1
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name) $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/fontconfig/Makefile b/packages/x/fontconfig/Makefile
new file mode 100644
index 0000000..948f7a5
--- /dev/null
+++ b/packages/x/fontconfig/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://www.freedesktop.org/wiki/Software/fontconfig
+#
+# Downloads:
+# =========
+# https://www.freedesktop.org/software/fontconfig/release
+#
+
+url = https://www.freedesktop.org/software/fontconfig/release
+
+versions = 2.13.95
+
+pkgname = fontconfig
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/fonts-tlwg/Makefile b/packages/x/fonts-tlwg/Makefile
new file mode 100644
index 0000000..c40f7ff
--- /dev/null
+++ b/packages/x/fonts-tlwg/Makefile
@@ -0,0 +1,24 @@
+
+#
+# Following command helps to cheate SUBDIRS list:
+# $ tree -fid .
+#
+
+SUBDIRS := ttf-tlwg
+
+
+all-recursive downloads_clean-recursive:
+ @set fnord $(MAKEFLAGS); amf=$$2; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ local_target="$$target"; \
+ (cd $$subdir && $(MAKE) $$fnord $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done; test -z "$$fail"
+
+all: all-recursive
+
+downloads_clean: downloads_clean-recursive
+
+.PHONY: all-recursive downloads_clean-recursive all downloads_clean
diff --git a/packages/x/fonts-tlwg/ttf-tlwg/Makefile b/packages/x/fonts-tlwg/ttf-tlwg/Makefile
new file mode 100644
index 0000000..eada5cf
--- /dev/null
+++ b/packages/x/fonts-tlwg/ttf-tlwg/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://linux.thai.net/projects/thaixfonts
+#
+# Downloads:
+# =========
+# https://linux.thai.net/pub/thailinux/software/fonts-tlwg/fonts
+#
+
+url = https://linux.thai.net/pub/thailinux/software/fonts-tlwg/fonts
+
+versions = 0.7.3
+
+pkgname = ttf-tlwg
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/freeglut/Makefile b/packages/x/freeglut/Makefile
new file mode 100644
index 0000000..c80776d
--- /dev/null
+++ b/packages/x/freeglut/Makefile
@@ -0,0 +1,63 @@
+#
+# Project Home:
+# ============
+# https://freeglut.sourceforge.net
+#
+# GitHub:
+# ======
+# https://github.com/FreeGLUTProject/freeglut
+#
+# Clone:
+# =====
+# git clone https://github.com/FreeGLUTProject/freeglut.git
+#
+
+url = https://github.com/FreeGLUTProject
+
+repo_name = freeglut
+pkg_name = freeglut
+suffix = tar.xz
+
+versions = 3.4.0
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=v`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/gimp/Makefile b/packages/x/gimp/Makefile
new file mode 100644
index 0000000..7079d0f
--- /dev/null
+++ b/packages/x/gimp/Makefile
@@ -0,0 +1,47 @@
+#
+# Project Home:
+# ============
+# https://www.gimp.org
+#
+# Downloads:
+# =========
+# https://download.gimp.org/pub/gimp
+#
+
+
+url = https://download.gimp.org/pub
+
+versions = 2.8.6 2.8.14 2.8.16 2.9.2 2.10.34
+
+pkg_name = gimp
+arch_type = tar.bz2
+suffixes = $(arch_type)
+
+files = $(foreach suffix, $(suffixes), $(addsuffix .$(suffix), $(addprefix $(pkg_name)-, $(versions))))
+
+tarballs = $(addsuffix .$(arch_type), $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(files) $(sha1s)
+
+
+.PHONY: downloads_clean
+
+$(files):
+ @echo -e "\n======= Downloading '$(pkg_name)' sourses =======\n"
+ @for version in $(versions) ; do \
+ major_minor=`echo $$version | sed 's/\([0-9][.0-9][0-9]*\)\([\.].*\)/\1/'` ; \
+ for suffix in $(suffixes) ; do \
+ wget -N $(url)/$(pkg_name)/v$$major_minor/$(pkg_name)-$$version.$$suffix ; \
+ done ; \
+ done
+
+$(sha1s): %.$(arch_type).sha1sum : %.$(arch_type)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -f $(files) $(sha1s)
diff --git a/packages/x/glew/Makefile b/packages/x/glew/Makefile
new file mode 100644
index 0000000..8f3e357
--- /dev/null
+++ b/packages/x/glew/Makefile
@@ -0,0 +1,40 @@
+#
+# Project Home:
+# ============
+# https://glew.sourceforge.net
+#
+# Downloads:
+# =========
+# https://downloads.sourceforge.net/project/glew/glew/${VERSION}
+#
+
+url = https://downloads.sourceforge.net/project/glew/glew
+
+versions = 1.11.0 1.12.0 1.13.0 2.2.0
+
+pkgname = glew
+suffix = tgz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ version=`echo $$tarball | sed 's/\([a-zA-Z-]*\)\([0-9][.0-9]*[.0-9]*\)\(\..*\)/\2/'` ; \
+ wget -N $(url)/$$version/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/glu/Makefile b/packages/x/glu/Makefile
new file mode 100644
index 0000000..5b8609a
--- /dev/null
+++ b/packages/x/glu/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://www.mesa3d.org
+#
+# Downloads:
+# =========
+# https://archive.mesa3d.org/glu
+#
+
+url = https://archive.mesa3d.org/glu
+
+versions = 9.0.2
+
+pkgname = glu
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/gst-plugins-bad/Makefile b/packages/x/gst-plugins-bad/Makefile
new file mode 100644
index 0000000..d337b1a
--- /dev/null
+++ b/packages/x/gst-plugins-bad/Makefile
@@ -0,0 +1,41 @@
+#
+# Project Home:
+# ============
+# https://gstreamer.com
+# https://gstreamer.freedesktop.org
+#
+# Downloads:
+# =========
+# https://gstreamer.freedesktop.org/src
+# https://gstreamer.freedesktop.org/src/gst-plugins-bad
+#
+
+url = https://gstreamer.freedesktop.org/src/gst-plugins-bad
+
+versions = 1.22.0 1.22.1
+
+pkgname = gst-plugins-bad
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/gst-plugins-base/Makefile b/packages/x/gst-plugins-base/Makefile
new file mode 100644
index 0000000..ff9797e
--- /dev/null
+++ b/packages/x/gst-plugins-base/Makefile
@@ -0,0 +1,42 @@
+#
+# Project Home:
+# ============
+# https://gstreamer.com
+# https://gstreamer.freedesktop.org
+#
+# Downloads:
+# =========
+# https://gstreamer.freedesktop.org/src
+# https://gstreamer.freedesktop.org/src/gst-plugins-base
+#
+
+url = https://gstreamer.freedesktop.org/src/gst-plugins-base
+
+versions = 0.10.36 1.4.5 1.6.4 1.7.1 1.8.2
+versions += 1.22.0 1.22.1
+
+pkgname = gst-plugins-base
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/gst-plugins-good/Makefile b/packages/x/gst-plugins-good/Makefile
new file mode 100644
index 0000000..dc9750e
--- /dev/null
+++ b/packages/x/gst-plugins-good/Makefile
@@ -0,0 +1,41 @@
+#
+# Project Home:
+# ============
+# https://gstreamer.com
+# https://gstreamer.freedesktop.org
+#
+# Downloads:
+# =========
+# https://gstreamer.freedesktop.org/src
+# https://gstreamer.freedesktop.org/src/gst-plugins-good
+#
+
+url = https://gstreamer.freedesktop.org/src/gst-plugins-good
+
+versions = 1.22.0 1.22.1
+
+pkgname = gst-plugins-good
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/gst-plugins-ugly/Makefile b/packages/x/gst-plugins-ugly/Makefile
new file mode 100644
index 0000000..0df9a54
--- /dev/null
+++ b/packages/x/gst-plugins-ugly/Makefile
@@ -0,0 +1,41 @@
+#
+# Project Home:
+# ============
+# https://gstreamer.com
+# https://gstreamer.freedesktop.org
+#
+# Downloads:
+# =========
+# https://gstreamer.freedesktop.org/src
+# https://gstreamer.freedesktop.org/src/gst-plugins-ugly
+#
+
+url = https://gstreamer.freedesktop.org/src/gst-plugins-ugly
+
+versions = 1.22.0 1.22.1
+
+pkgname = gst-plugins-ugly
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/gstreamer/Makefile b/packages/x/gstreamer/Makefile
new file mode 100644
index 0000000..30a7d83
--- /dev/null
+++ b/packages/x/gstreamer/Makefile
@@ -0,0 +1,41 @@
+#
+# Project Home:
+# ============
+# https://gstreamer.com
+# https://gstreamer.freedesktop.org
+#
+# Downloads:
+# =========
+# https://gstreamer.freedesktop.org/src
+# https://gstreamer.freedesktop.org/src/gstreamer
+#
+
+url = http://gstreamer.freedesktop.org/src/gstreamer
+
+versions = 0.10.36 1.4.5 1.6.4 1.7.1 1.8.2 1.22.0
+
+pkgname = gstreamer
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/hicolor-icon-theme/Makefile b/packages/x/hicolor-icon-theme/Makefile
new file mode 100644
index 0000000..3598ab0
--- /dev/null
+++ b/packages/x/hicolor-icon-theme/Makefile
@@ -0,0 +1,74 @@
+#
+# Project Home:
+# ============
+# https://cgit.freedesktop.org/xdg/default-icon-theme
+#
+# cGit:
+# ====
+# https://cgit.freedesktop.org/xdg/default-icon-theme
+#
+# Clone:
+# =====
+# git clone git://anongit.freedesktop.org/xdg/default-icon-theme
+# git clone https://anongit.freedesktop.org/git/xdg/default-icon-theme.git
+#
+
+url = git://anongit.freedesktop.org/git/xdg/default-icon-theme
+
+repo_name = default-icon-theme
+
+prefix = hicolor-icon-theme
+
+#
+# List of tags to be extracted:
+#
+TAGS = 0.12 0.13 0.14 0.15 0.17
+
+suffix = tar.xz
+
+git_repo = .git_clone
+versions = $(foreach tag, $(TAGS), $(shell echo $(tag)))
+tarballs = $(addsuffix .$(suffix), $(addprefix $(prefix)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @if [ "$(url)" = 'git://radix.pro' ]; then \
+ git clone $(url)/$(repo_name).git $(repo_name) ; \
+ else \
+ git clone $(url) $(repo_name) ; \
+ fi
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for tag in $(TAGS) ; do \
+ version=`echo $$tag` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(prefix)-$$version/ $$tag | \
+ xz >../$(prefix)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/libdrm/Makefile b/packages/x/libdrm/Makefile
new file mode 100644
index 0000000..0dd4205
--- /dev/null
+++ b/packages/x/libdrm/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://dri.freedesktop.org/wiki
+#
+# Downloads:
+# =========
+# https://dri.freedesktop.org/libdrm
+#
+
+url = https://dri.freedesktop.org/libdrm
+
+versions = 2.4.114
+
+pkgname = libdrm
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/libepoxy/Makefile b/packages/x/libepoxy/Makefile
new file mode 100644
index 0000000..f26fbd5
--- /dev/null
+++ b/packages/x/libepoxy/Makefile
@@ -0,0 +1,65 @@
+#
+# Project Home:
+# ============
+# https://github.com/anholt/libepoxy
+#
+# Gitweb:
+# https://github.com/anholt/libepoxy
+#
+# Clone:
+# =====
+# git clone https://github.com/anholt/libepoxy.git
+#
+
+url = https://github.com/anholt/libepoxy.git
+
+repo_name = libepoxy
+
+versions = 1.5.10
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(repo_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url) $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ if [ ! -f $(repo_name)-$$version.tar.xz ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.tar.xz' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(repo_name)-$$version/ $$version | \
+ xz >../$(repo_name)-$$version.tar.xz ) ; \
+ fi ; \
+ done
+
+# tar xjf $(repo_name)-$$version.tar.bz2 ; \
+# ( cd $(repo_name)-$$version ; ./autogen.sh ; make distclean ; rm -rf autom4te.cache ) ; \
+# tar cjf $(repo_name)-$$version.tar.bz2 $(repo_name)-$$version ; \
+# rm -rf $(repo_name)-$$version ; \
+
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/liberation-fonts-ttf/Makefile b/packages/x/liberation-fonts-ttf/Makefile
new file mode 100644
index 0000000..fc11bac
--- /dev/null
+++ b/packages/x/liberation-fonts-ttf/Makefile
@@ -0,0 +1,44 @@
+#
+# Project Home:
+# ============
+# https://github.com/liberationfonts/liberation-fonts
+#
+# Downloads:
+# =========
+# https://github.com/liberationfonts/liberation-fonts/releases
+#
+# GitHub:
+# ======
+# git clone https://github.com/liberationfonts/liberation-fonts.git
+# https://ftp.radix.pro/3pp/fonts/liberation
+#
+
+url = https://ftp.radix.pro/3pp/fonts/liberation
+
+versions = 2.1.5
+
+pkg_name = liberation-fonts-ttf
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/liberation-fonts/Makefile b/packages/x/liberation-fonts/Makefile
new file mode 100644
index 0000000..6239a9a
--- /dev/null
+++ b/packages/x/liberation-fonts/Makefile
@@ -0,0 +1,72 @@
+#
+# Project Home:
+# ============
+# https://github.com/liberationfonts/liberation-fonts
+#
+# Downloads:
+# =========
+# https://github.com/liberationfonts/liberation-fonts/releases
+#
+# GitHub:
+# ======
+# git clone https://github.com/liberationfonts/liberation-fonts.git
+#
+
+url = https://github.com/liberationfonts
+
+repo_name = liberation-fonts
+pkg_name = liberation-fonts
+
+#
+# List of tags to be extracted:
+# ============================
+# hash | tag
+# ----------------------------------------+-----
+revisions = 4b0192046158094654e865245832c66d2104219e:2.1.5
+
+git_repo = .git_clone
+
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ version=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(pkg_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$hash | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/libevdev/Makefile b/packages/x/libevdev/Makefile
new file mode 100644
index 0000000..45a95d4
--- /dev/null
+++ b/packages/x/libevdev/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://www.freedesktop.org/wiki/Software/libevdev
+#
+# Downloads:
+# =========
+# https://www.freedesktop.org/software/libevdev
+#
+
+url = https://www.freedesktop.org/software/libevdev
+
+versions = 1.3 1.3.1 1.3.2 1.4.6 1.5.1 1.12.1 1.13.0
+
+pkgname = libevdev
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/libglvnd/Makefile b/packages/x/libglvnd/Makefile
new file mode 100644
index 0000000..d8dde4a
--- /dev/null
+++ b/packages/x/libglvnd/Makefile
@@ -0,0 +1,71 @@
+#
+# Project Home:
+# ============
+# https://gitlab.freedesktop.org/glvnd/libglvnd
+#
+# GitLab:
+# ======
+# https://gitlab.freedesktop.org/glvnd/libglvnd
+#
+# Clone:
+# =====
+# git clone https://gitlab.freedesktop.org/glvnd/libglvnd.git
+#
+
+url = https://gitlab.freedesktop.org/glvnd
+
+repo_name = libglvnd
+
+#
+# List of versions to be extracted:
+# ================================
+# hash | tag
+# ----------------------------------------+-----
+revisions = b05bbcdaeb9b700cf7877e6d66f8fc3ac952295b:1.6.0
+
+git_repo = .git_clone
+
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(repo_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ version=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(repo_name)-$$version/ $$hash | \
+ xz >../$(repo_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/libinput/Makefile b/packages/x/libinput/Makefile
new file mode 100644
index 0000000..ea9798b
--- /dev/null
+++ b/packages/x/libinput/Makefile
@@ -0,0 +1,63 @@
+#
+# Project Home:
+# ============
+# https://www.freedesktop.org/wiki/Software/libinput
+#
+# GitLab:
+# ======
+# https://gitlab.freedesktop.org/libinput/libinput
+#
+# Clone:
+# =====
+# git clone https://gitlab.freedesktop.org/libinput/libinput.git
+#
+
+url = https://gitlab.freedesktop.org/libinput
+
+repo_name = libinput
+pkg_name = libinput
+suffix = tar.xz
+
+versions = 1.22.1
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/libtxc_dxtn/Makefile b/packages/x/libtxc_dxtn/Makefile
new file mode 100644
index 0000000..60640cd
--- /dev/null
+++ b/packages/x/libtxc_dxtn/Makefile
@@ -0,0 +1,44 @@
+#
+# Project Home:
+# ============
+# https://dri.freedesktop.org/wiki/S3TC
+# https://people.freedesktop.org/~cbrill/libtxc_dxtn
+#
+# Git:
+# ===
+# https://cgit.freedesktop.org/~mareko/libtxc_dxtn
+#
+# Downloads:
+# =========
+# https://people.freedesktop.org/~cbrill/libtxc_dxtn
+#
+
+url = https://people.freedesktop.org/~cbrill/libtxc_dxtn
+
+versions = 1.0.1
+
+pkgname = libtxc_dxtn
+suffix = tar.bz2
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/libvdpau/Makefile b/packages/x/libvdpau/Makefile
new file mode 100644
index 0000000..9f59b0e
--- /dev/null
+++ b/packages/x/libvdpau/Makefile
@@ -0,0 +1,67 @@
+#
+# Project Home:
+# ============
+# https://freedesktop.org/wiki/Software/vaapi
+#
+# Cgit:
+# ====
+# https://cgit.freedesktop.org/~aplattner/libvdpau
+#
+# Clone:
+# =====
+# git clone git://people.freedesktop.org/~aplattner/libvdpau
+#
+# Downloads:
+# =========
+# https://people.freedesktop.org/~aplattner/vdpau
+#
+
+url = git://people.freedesktop.org/~aplattner
+
+repo_name = libvdpau
+pkg_name = libvdpau
+suffix = tar.xz
+
+versions = 1.5
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/libwacom/Makefile b/packages/x/libwacom/Makefile
new file mode 100644
index 0000000..00fe5b0
--- /dev/null
+++ b/packages/x/libwacom/Makefile
@@ -0,0 +1,69 @@
+#
+# Project Home:
+# ============
+# https://github.com/linuxwacom/libwacom/wiki
+#
+# GitHub:
+# ======
+# https://github.com/linuxwacom/libwacom.git
+#
+
+url = https://github.com/linuxwacom
+
+repo_name = libwacom
+pkg_name = libwacom
+
+#
+# List of versions to be extracted:
+# ================================
+# hash | tag
+# ----------------------------------------+-----
+revisions = cb36c462763a321454d5c08fe974a3d7dec4ed1a:2.6.0
+
+git_repo = .git_clone
+
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ version=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(pkg_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$hash | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/libxkbcommon/Makefile b/packages/x/libxkbcommon/Makefile
new file mode 100644
index 0000000..a0d2ab5
--- /dev/null
+++ b/packages/x/libxkbcommon/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://xkbcommon.org
+#
+# Downloads:
+# =========
+# https://xkbcommon.org/download/libxkbcommon-1.5.0.tar.xz
+#
+
+url = https://xkbcommon.org/download
+
+versions = 1.5.0
+
+pkgname = libxkbcommon
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/lxappearance-obconf/Makefile b/packages/x/lxappearance-obconf/Makefile
new file mode 100644
index 0000000..c2e5adc
--- /dev/null
+++ b/packages/x/lxappearance-obconf/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://sourceforge.net/projects/lxde
+#
+# Downloads:
+# =========
+# https://sourceforge.net/projects/lxde/files/LXAppearance Obconf
+#
+
+url = https://downloads.sourceforge.net/project/lxde/LXAppearance%20Obconf
+
+versions = 0.2.3
+
+pkgname = lxappearance-obconf
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(signatures) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/lxappearance/Makefile b/packages/x/lxappearance/Makefile
new file mode 100644
index 0000000..92e6c2c
--- /dev/null
+++ b/packages/x/lxappearance/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://sourceforge.net/projects/lxde
+#
+# Downloads:
+# =========
+# https://sourceforge.net/projects/lxde/files/LXAppearance
+#
+
+url = https://downloads.sourceforge.net/project/lxde/LXAppearance
+
+versions = 0.6.1 0.6.2 0.6.3
+
+pkgname = lxappearance
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(signatures) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/lxinput/Makefile b/packages/x/lxinput/Makefile
new file mode 100644
index 0000000..ec9d3bd
--- /dev/null
+++ b/packages/x/lxinput/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://sourceforge.net/projects/lxde
+#
+# Downloads:
+# =========
+# https://downloads.sourceforge.net/project/lxde/LXInput%20%28Kbd%20and%20amp_%20mouse%20config%29/LXInput%200.3.x
+#
+
+url = https://downloads.sourceforge.net/project/lxde/LXInput%20%28Kbd%20and%20amp_%20mouse%20config%29/LXInput%200.3.x
+
+versions = 0.3.5
+
+pkgname = lxinput
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(signatures) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/mesa-demos/Makefile b/packages/x/mesa-demos/Makefile
new file mode 100644
index 0000000..3a59d6c
--- /dev/null
+++ b/packages/x/mesa-demos/Makefile
@@ -0,0 +1,40 @@
+#
+# Project Home:
+# ============
+# https://www.mesa3d.org
+#
+# Downloads:
+# =========
+# https://archive.mesa3d.org/demos/${VERSION}
+#
+
+url = https://archive.mesa3d.org/demos
+
+versions = 8.2.0 8.3.0 8.5.0
+
+pkgname = mesa-demos
+suffix = tar.bz2
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ version=`echo $$tarball | sed 's/\([a-zA-Z-]*\)\([0-9]*[.][0-9]*[.][0-9]*\)\([\.]tar.*\)/\2/'` ; \
+ wget -N $(url)/$$version/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/mesa/21.x/Makefile b/packages/x/mesa/21.x/Makefile
new file mode 100644
index 0000000..9057988
--- /dev/null
+++ b/packages/x/mesa/21.x/Makefile
@@ -0,0 +1,75 @@
+#
+# Project Home:
+# ============
+# https://www.mesa3d.org
+#
+# Downloads:
+# =========
+# https://docs.mesa3d.org/download.html
+#
+# GitLab:
+# ======
+# https://gitlab.freedesktop.org/mesa/mesa
+#
+# Clone:
+# =====
+# git clone https://gitlab.freedesktop.org/mesa/mesa.git
+#
+
+url = https://gitlab.freedesktop.org/mesa
+
+repo_name = mesa
+
+#
+# List of 'amber' branch versions to be extracted:
+# ===============================================
+# hash | tag
+# ----------------------------------------+-----
+revisions = 14d7da24640dadfb55769cfc93e13ab653996fed:21.3.9
+
+git_repo = .git_clone
+
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(repo_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ version=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(repo_name)-$$version/ $$hash | \
+ xz >../$(repo_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/mesa/22.x/Makefile b/packages/x/mesa/22.x/Makefile
new file mode 100644
index 0000000..de09d23
--- /dev/null
+++ b/packages/x/mesa/22.x/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://www.mesa3d.org
+#
+# Downloads:
+# =========
+# https://docs.mesa3d.org/download.html
+#
+
+url = https://archive.mesa3d.org
+
+versions = 22.3.4
+
+pkgname = mesa
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/mesa/Makefile b/packages/x/mesa/Makefile
new file mode 100644
index 0000000..7ac6945
--- /dev/null
+++ b/packages/x/mesa/Makefile
@@ -0,0 +1,25 @@
+
+#
+# Following command helps to cheate SUBDIRS list:
+# $ tree -fid .
+#
+
+SUBDIRS := 21.x \
+ 22.x
+
+
+all-recursive downloads_clean-recursive:
+ @set fnord $(MAKEFLAGS); amf=$$2; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ local_target="$$target"; \
+ (cd $$subdir && $(MAKE) $$fnord $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done; test -z "$$fail"
+
+all: all-recursive
+
+downloads_clean: downloads_clean-recursive
+
+.PHONY: all-recursive downloads_clean-recursive all downloads_clean
diff --git a/packages/x/mozilla-firefox/Makefile b/packages/x/mozilla-firefox/Makefile
new file mode 100644
index 0000000..5cee90b
--- /dev/null
+++ b/packages/x/mozilla-firefox/Makefile
@@ -0,0 +1,41 @@
+#
+# Project Home:
+# ============
+# https://www-archive.mozilla.org/projects/
+#
+# Downloads:
+# =========
+# https://archive.mozilla.org/pub/firefox/releases/$(VERSION)/
+#
+
+url = https://archive.mozilla.org/pub/firefox/releases
+
+versions = 44.0 45.0.1 45.0.2 52.0 70.0
+versions += 111.0.1
+
+pkgname = firefox
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addsuffix .source, $(addprefix $(pkgname)-, $(versions))))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ version=`echo $$tarball | sed 's/\([a-zA-Z-]*\)\([0-9]*[.0-9]*\)\([\.].*\)/\2/'` ; \
+ wget -N $(url)/$$version/source/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/mozilla-thunderbird/Makefile b/packages/x/mozilla-thunderbird/Makefile
new file mode 100644
index 0000000..ab543e7
--- /dev/null
+++ b/packages/x/mozilla-thunderbird/Makefile
@@ -0,0 +1,41 @@
+#
+# Project Home:
+# ============
+# https://www-archive.mozilla.org/projects/
+#
+# Downloads:
+# =========
+# https://archive.mozilla.org/pub/thunderbird/releases/${VERSION}
+#
+
+url = https://archive.mozilla.org/pub/thunderbird/releases
+
+versions = 45.0 45.8.0
+versions += 102.9.1
+
+pkgname = thunderbird
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addsuffix .source, $(addprefix $(pkgname)-, $(versions))))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ version=`echo $$tarball | sed 's/\([a-zA-Z-]*\)\([0-9]*[.0-9]*\)\([\.].*\)/\2/'` ; \
+ wget -N $(url)/$$version/source/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/mtdev/Makefile b/packages/x/mtdev/Makefile
new file mode 100644
index 0000000..8da0ed1
--- /dev/null
+++ b/packages/x/mtdev/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://bitmath.org/code/mtdev
+#
+# Downloads:
+# =========
+# https://bitmath.org/code/mtdev
+#
+
+url = https://bitmath.org/code/mtdev
+
+versions = 1.1.4 1.1.5 1.1.6
+
+pkgname = mtdev
+suffix = tar.bz2
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/nitrogen/Makefile b/packages/x/nitrogen/Makefile
new file mode 100644
index 0000000..f212021
--- /dev/null
+++ b/packages/x/nitrogen/Makefile
@@ -0,0 +1,67 @@
+#
+# Project Home:
+# ============
+# https://github.com/l3ib/nitrogen
+#
+# GitHub:
+# ======
+# https://github.com/l3ib/nitrogen
+#
+# Clone:
+# =====
+# git clone https://github.com/l3ib/nitrogen.git
+#
+
+url = https://github.com/l3ib
+
+repo_name = nitrogen
+pkg_name = nitrogen
+suffix = tar.xz
+
+versions = 1.6.1
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ tar xJf $(pkg_name)-$$version.$(suffix) ; \
+ ( cd $(pkg_name)-$$version ; autoreconf -vif ; rm -rf autom4te.cache .mailmap *~ ) ; \
+ tar cJf $(pkg_name)-$$version.$(suffix) $(pkg_name)-$$version ; \
+ rm -rf $(pkg_name)-$$version ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/obconf/Makefile b/packages/x/obconf/Makefile
new file mode 100644
index 0000000..9aee0d4
--- /dev/null
+++ b/packages/x/obconf/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# http://openbox.org/wiki/Main_Page
+#
+# Downloads:
+# =========
+# http://openbox.org/wiki/Openbox:Download
+#
+
+url = http://openbox.org/dist/obconf
+
+versions = 2.0.4
+
+pkgname = obconf
+suffix = tar.gz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(signatures) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/openbox/Makefile b/packages/x/openbox/Makefile
new file mode 100644
index 0000000..06cf076
--- /dev/null
+++ b/packages/x/openbox/Makefile
@@ -0,0 +1,67 @@
+#
+# Project Home:
+# ============
+# http://openbox.org/wiki/Main_Page
+#
+# GitHub:
+# ======
+# https://github.com/Mikachu/openbox
+#
+# Clone:
+# =====
+# git clone https://github.com/Mikachu/openbox.git
+#
+
+url = https://github.com/Mikachu
+
+repo_name = openbox
+pkg_name = openbox
+suffix = tar.xz
+
+versions = 3.6.1
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=release-`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ tar xJf $(pkg_name)-$$version.$(suffix) ; \
+ ( cd $(pkg_name)-$$version ; ./bootstrap ; rm -rf autom4te.cache .gitignore ) ; \
+ tar cJf $(pkg_name)-$$version.$(suffix) $(pkg_name)-$$version ; \
+ rm -rf $(pkg_name)-$$version ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/pyxdg/Makefile b/packages/x/pyxdg/Makefile
new file mode 100644
index 0000000..fc68f04
--- /dev/null
+++ b/packages/x/pyxdg/Makefile
@@ -0,0 +1,63 @@
+#
+# Project Home:
+# ============
+# https://freedesktop.org/wiki/Software/pyxdg
+#
+# Git:
+# ===
+# https://cgit.freedesktop.org/xdg/pyxdg
+#
+# Clone:
+# =====
+# git clone https://gitlab.freedesktop.org/xdg/pyxdg.git
+#
+
+url = https://gitlab.freedesktop.org/xdg
+
+repo_name = pyxdg
+pkg_name = pyxdg
+suffix = tar.xz
+
+versions = 0.28
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=rel-`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/qt5/Makefile b/packages/x/qt5/Makefile
new file mode 100644
index 0000000..d110cd1
--- /dev/null
+++ b/packages/x/qt5/Makefile
@@ -0,0 +1,76 @@
+#
+# Project Home:
+# ============
+# https://www.qt.io/ide
+#
+# GitLab:
+# ======
+# git clone https://invent.kde.org/qt/qt/qt5.git
+#
+
+url = https://invent.kde.org/qt/qt
+
+versions = 5.15.8
+
+repo_name = qt5
+pkg_name = qt-everywhere-src
+
+git_repo = .git_clone
+
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ short_version=`echo $$version | cut -f1,2 -d '.'` ; \
+ if [ ! -f $(pkg_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkg_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) ; \
+ git checkout kde/$${short_version} ; \
+ ./init-repository ; \
+ for i in $$(find . -type d -name "qt*" -maxdepth 1) ; do \
+ cd $${i} ; \
+ ../qtbase/bin/syncqt.pl -version $${version} ; \
+ cd .. ; \
+ done ; \
+ rm -rf qtqa qtrepotools qtsystems qtpim qtfeedback qtdocgallery qtcanvas3d ; \
+ rm -rf qtdatavis3d/tools qtcharts/tools ; \
+ rm -f init-repository README.git .commit-template ; \
+ ) ; \
+ mv $(repo_name) $(pkg_name)-$${version} ; \
+ tar --exclude-vcs -cf qt-everywhere-src-$${version}.tar qt-everywhere-src-$${version} ; \
+ tar -cf qt5-gitmodules.tar qt-everywhere-src-$${version}/**/.gitmodules qt-everywhere-src-$${version}/.gitmodules ; \
+ tar --concatenate --file=qt-everywhere-src-$${version}.tar qt5-gitmodules.tar ; \
+ xz qt-everywhere-src-$${version}.tar ; \
+ rm -rf $(pkg_name)-$${version} ; \
+ rm -f qt5-gitmodules.tar ; \
+ fi ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/startup-notification/Makefile b/packages/x/startup-notification/Makefile
new file mode 100644
index 0000000..05c1bd2
--- /dev/null
+++ b/packages/x/startup-notification/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://www.freedesktop.org/wiki/Software/startup-notification
+#
+# Downloads:
+# =========
+# https://www.freedesktop.org/software/startup-notification/releases
+#
+
+url = https://www.freedesktop.org/software/startup-notification/releases
+
+versions = 0.12
+
+pkgname = startup-notification
+suffix = tar.gz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/terminus-font/Makefile b/packages/x/terminus-font/Makefile
new file mode 100644
index 0000000..5b095dc
--- /dev/null
+++ b/packages/x/terminus-font/Makefile
@@ -0,0 +1,40 @@
+#
+# Project Home:
+# ============
+# https://terminus-font.sourceforge.net
+#
+# Downloads:
+# =========
+# https://downloads.sourceforge.net/project/terminus-font/terminus-font-${VERSION}
+#
+
+url = https://downloads.sourceforge.net/project/terminus-font
+
+versions = 4.38 4.39 4.40 4.49.1
+
+pkgname = terminus-font
+suffix = tar.gz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for version in $(versions) ; do \
+ ver=`echo "$$version" | cut -f1,2 -d'.'` ; \
+ wget -N $(url)/$(pkgname)-$$ver/$(pkgname)-$$version.$(suffix) ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/thaixfonts/Makefile b/packages/x/thaixfonts/Makefile
new file mode 100644
index 0000000..227ca57
--- /dev/null
+++ b/packages/x/thaixfonts/Makefile
@@ -0,0 +1,40 @@
+#
+# Project Home:
+# ============
+# https://linux.thai.net/projects/thaixfonts
+#
+# Downloads:
+# =========
+# ftp://linux.thai.net/pub/thailinux/software/thaixfonts
+# https://linux.thai.net/pub/thailinux/software/thaixfonts
+#
+
+url = https://linux.thai.net/pub/thailinux/software/thaixfonts
+
+versions = 1.2.6 1.2.7
+
+pkgname = thaixfonts
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/tint2/Makefile b/packages/x/tint2/Makefile
new file mode 100644
index 0000000..576f327
--- /dev/null
+++ b/packages/x/tint2/Makefile
@@ -0,0 +1,63 @@
+#
+# Project Home:
+# ============
+# https://gitlab.com/o9000/tint2
+#
+# GitLab:
+# ======
+# https://gitlab.com/o9000/tint2
+#
+# Clone:
+# =====
+# git clone https://gitlab.com/o9000/tint2.git
+#
+
+url = https://gitlab.com/o9000
+
+repo_name = tint2
+pkg_name = tint2
+suffix = tar.xz
+
+versions = 17.0.2
+
+git_repo = .git_clone
+tarballs = $(addsuffix .tar.xz, $(addprefix $(pkg_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for version in $(versions) ; do \
+ tag=`echo $$version` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkg_name)-$$version/ $$tag | \
+ xz >../$(pkg_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.tar.xz.sha1sum : %.tar.xz
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/vaapi/Makefile b/packages/x/vaapi/Makefile
new file mode 100644
index 0000000..ad3c2dc
--- /dev/null
+++ b/packages/x/vaapi/Makefile
@@ -0,0 +1,26 @@
+
+#
+# Following command helps to cheate SUBDIRS list:
+# $ tree -fid .
+#
+
+SUBDIRS := intel-vaapi-driver \
+ libva \
+ libva-vdpau-driver
+
+
+all-recursive downloads_clean-recursive:
+ @set fnord $(MAKEFLAGS); amf=$$2; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ local_target="$$target"; \
+ (cd $$subdir && $(MAKE) $$fnord $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done; test -z "$$fail"
+
+all: all-recursive
+
+downloads_clean: downloads_clean-recursive
+
+.PHONY: all-recursive downloads_clean-recursive all downloads_clean
diff --git a/packages/x/vaapi/intel-vaapi-driver/Makefile b/packages/x/vaapi/intel-vaapi-driver/Makefile
new file mode 100644
index 0000000..c4b2d97
--- /dev/null
+++ b/packages/x/vaapi/intel-vaapi-driver/Makefile
@@ -0,0 +1,74 @@
+#
+# Project Home:
+# ============
+# https://01.org/linuxmedia/vaapi
+#
+# GitHub:
+# ======
+# https://github.com/intel/intel-vaapi-driver
+#
+
+url = https://github.com/intel
+
+repo_name = intel-vaapi-driver
+
+#
+# List of tags to be extracted:
+# ============================
+# hash | tag
+# ----------------------------------------+-----
+revisions = 9a1f0c64174f970a26380d4957583c71372fbb7c:2.4.1
+
+git_repo = .git_clone
+
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(repo_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ version=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(repo_name)-$$version/ $$hash | \
+ xz >../$(repo_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ tar xJf $(repo_name)-$$version.$(suffix) ; \
+ ( cd $(repo_name)-$$version ; autoreconf -vif ; \
+ rm -rf autom4te.cache .github .gitignore .travis.yml *~ ; \
+ ) ; \
+ tar cJf $(repo_name)-$$version.$(suffix) $(repo_name)-$$version ; \
+ rm -rf $(repo_name)-$$version ; \
+ done
+
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/vaapi/libva-vdpau-driver/Makefile b/packages/x/vaapi/libva-vdpau-driver/Makefile
new file mode 100644
index 0000000..6a2c89a
--- /dev/null
+++ b/packages/x/vaapi/libva-vdpau-driver/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://freedesktop.org/wiki/Software/vaapi
+#
+# Downloads:
+# =========
+# https://www.freedesktop.org/software/vaapi/releases
+#
+
+url = https://www.freedesktop.org/software/vaapi/releases/libva-vdpau-driver
+
+versions = 0.7.4
+
+pkgname = libva-vdpau-driver
+suffix = tar.bz2
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/vaapi/libva/Makefile b/packages/x/vaapi/libva/Makefile
new file mode 100644
index 0000000..7f8272e
--- /dev/null
+++ b/packages/x/vaapi/libva/Makefile
@@ -0,0 +1,72 @@
+#
+# Project Home:
+# ============
+# https://01.org/linuxmedia/vaapi
+#
+# GitHub:
+# ======
+# https://github.com/intel/libva
+#
+
+url = https://github.com/intel
+
+repo_name = libva
+
+#
+# List of tags to be extracted:
+# ============================
+# hash | tag
+# ----------------------------------------+-----
+revisions = df3c584bb79d1a1e521372d62fa62e8b1c52ce6c:2.17.0
+
+git_repo = .git_clone
+
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(repo_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ version=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(repo_name)-$$version/ $$hash | \
+ xz >../$(repo_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ tar xJf $(repo_name)-$$version.$(suffix) ; \
+ ( cd $(repo_name)-$$version ; ./autogen.sh ; make distclean ; rm -rf autom4te.cache .github .gitignore *~ ) ; \
+ tar cJf $(repo_name)-$$version.$(suffix) $(repo_name)-$$version ; \
+ rm -rf $(repo_name)-$$version ; \
+ done
+
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/xdg-user-dirs/Makefile b/packages/x/xdg-user-dirs/Makefile
new file mode 100644
index 0000000..4e086ea
--- /dev/null
+++ b/packages/x/xdg-user-dirs/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://www.freedesktop.org/wiki/Software/xdg-user-dirs
+#
+# Downloads:
+# =========
+# https://user-dirs.freedesktop.org/releases
+#
+
+url = https://user-dirs.freedesktop.org/releases
+
+versions = 0.14 0.15 0.18
+
+pkgname = xdg-user-dirs
+suffix = tar.gz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/packages/x/xdg-utils/Makefile b/packages/x/xdg-utils/Makefile
new file mode 100644
index 0000000..65aa19d
--- /dev/null
+++ b/packages/x/xdg-utils/Makefile
@@ -0,0 +1,77 @@
+#
+# Project Home:
+# ============
+# https://cgit.freedesktop.org/xdg/xdg-utils
+#
+# cGit:
+# ====
+# https://cgit.freedesktop.org/xdg/xdg-utils
+#
+# Clone:
+# =====
+# git clone git://anongit.freedesktop.org/xdg/xdg-utils
+# git clone https://anongit.freedesktop.org/git/xdg/xdg-utils.git
+#
+
+url = git://anongit.freedesktop.org/git/xdg/xdg-utils
+
+repo_name = xdg-utils
+
+#
+# List of tags to be extracted:
+#
+TAGS = 8c65fb00f55ec676b24872885dc2dbf7a4dacf25:1.0.2
+TAGS += 9595033d358a7d78e2b882c36ac11f29697f064d:1.1.0-rc2
+TAGS += f0df41402e827051ec16bac212c8eaf08ada75e4:1.1.0
+TAGS += ef8a58be4049697bb6347c3c5b8fff4d2b2deb86:1.1.1
+TAGS += 159fc37075db2decf446f453fe1a796da6921aad:1.1.3
+
+suffix = tar.xz
+
+git_repo = .git_clone
+versions = $(foreach tag, $(TAGS), $(shell echo $(tag) | cut -f 2 -d ':'))
+tarballs = $(addsuffix .$(suffix), $(addprefix $(repo_name)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @if [ "$(url)" = 'git://radix.pro' ]; then \
+ git clone $(url)/$(repo_name).git $(repo_name) ; \
+ else \
+ git clone $(url) $(repo_name) ; \
+ fi
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for tag in $(TAGS) ; do \
+ version=`echo $$tag | cut -f 2 -d ':'` ; \
+ hash=`echo $$tag | cut -f 1 -d ':'` ; \
+ if [ ! -f $(repo_name)-$$version.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(repo_name)-$$version.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(repo_name)-$$version/ $$hash | \
+ xz >../$(repo_name)-$$version.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/packages/x/xterm/Makefile b/packages/x/xterm/Makefile
new file mode 100644
index 0000000..2882824
--- /dev/null
+++ b/packages/x/xterm/Makefile
@@ -0,0 +1,39 @@
+#
+# Project Home:
+# ============
+# https://invisible-island.net/xterm
+#
+# Downloads:
+# =========
+# https://invisible-island.net/archives/xterm
+#
+
+url = https://invisible-island.net/archives/xterm
+
+versions = 313 322 324 325 379
+
+pkgname = xterm
+suffix = tgz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)