initial flexipatch setup

This commit is contained in:
Luca Bilke 2024-01-31 01:17:44 +01:00
parent e639ef6f6d
commit e0cefe87f6
No known key found for this signature in database
GPG Key ID: AD6630D0A1E650AC
6 changed files with 1658 additions and 0 deletions

6
.gitmodules vendored Normal file
View File

@ -0,0 +1,6 @@
[submodule "dwm-flexipatch"]
path = dwm-flexipatch
url = https://github.com/bakkeby/dwm-flexipatch
[submodule "flexipatch-finalizer"]
path = flexipatch-finalizer
url = https://github.com/bakkeby/flexipatch-finalizer

67
.woodpecker.yml Normal file
View File

@ -0,0 +1,67 @@
when:
- event: tag
- event: manual
steps:
build:
image: gcc
commands: |
apt-get update
apt-get install -y \
libx11-dev libx11-xcb-dev libxcb1-dev \
libxcb-res0-dev libxft-dev libxinerama-dev \
libfreetype6-dev libfontconfig1-dev
cp -f config.mk Makefile patches.h dwm-flexipatch/
flexipatch-finalizer/flexipatch-finalizer.sh -r -d dwm-flexipatch -o dwm-final
for patch in patches/*.diff; do
patch -d dwm-final <"$patch"
done
cp -f config.h dwm-final/
cd dwm-final || exit 1
make clean install DESTDIR="$${CI_WORKSPACE}/pkg" PREFIX="/usr"
package-xbps:
image: ghcr.io/void-linux/void-musl-busybox
environment:
- LICENSE=GPL-2.0
- SHORT_DESCRIPTION=Customized dwm
commands: |
xbps-create -A x86_64 \
-H "$${CI_REPO_URL}" \
-l "$${LICENSE}" \
-n "$${CI_REPO_NAME}-$${CI_COMMIT_TAG}_1" \
-m "$${CI_COMMIT_AUTHOR} <$${CI_COMMIT_AUTHOR_EMAIL}>" \
-s "$${SHORT_DESCRIPTION}" \
"$${CI_WORKSPACE}/pkg"
package-targz:
image: alpine
commands: |
tar czf $${CI_REPO_NAME}-$${CI_COMMIT_TAG}.tar.gz --directory=$${CI_WORKSPACE}/pkg .
publish:
image: woodpeckerci/plugin-gitea-release
settings:
base_url: https://git.snaile.de
files:
- "${CI_REPO_NAME}-${CI_COMMIT_TAG}.tar.gz"
api_key:
from_secret: gitea_release
target: main
publish-xbps:
image: ghcr.io/void-linux/void-musl-busybox
environment:
- XBPS_TARGET_ARCH=x86_64
secrets:
- source: xbps_pem_passphrase
target: XBPS_PASSPHRASE
volumes:
- /var/www/xbps:/target
- /etc/woodpecker/:/etc/woodpecker:ro
commands: |
export XBPS_TARGET_ARCH
mv $${CI_REPO_NAME}-$${CI_COMMIT_TAG}_1.x86_64.xbps /target
xbps-rindex -a /target/$${CI_REPO_NAME}-$${CI_COMMIT_TAG}_1.x86_64.xbps
xbps-rindex -S --signedby "$${CI_COMMIT_AUTHOR} <$${CI_COMMIT_AUTHOR_EMAIL}>" --privkey /etc/woodpecker/privkey.pem /target/$${CI_REPO_NAME}-$${CI_COMMIT_TAG}_1.x86_64.xbps

16
build.sh Executable file
View File

@ -0,0 +1,16 @@
#!/bin/sh
cp -f config.mk patches.h dwm-flexipatch/
flexipatch-finalizer/flexipatch-finalizer.sh -r -d dwm-flexipatch -o dwm-final
for patch in patches/*.diff; do
patch -d dwm-final <"$patch"
done
cp -f config.h dwm-final/
cd dwm-final || exit 1
make clean install DESTDIR="../pkg" PREFIX="/usr"
cd - || exit 1
xbps-create -A x86_64 \
-n "dwm-dev-1.0.0_1" \
-s "Test build of dwm" \
pkg

73
config.mk Normal file
View File

@ -0,0 +1,73 @@
# dwm version
VERSION = 6.4
# Customize below to fit your system
# paths
PREFIX = /usr/local
MANPREFIX = ${PREFIX}/share/man
X11INC = /usr/X11R6/include
X11LIB = /usr/X11R6/lib
# FreeBSD (uncomment)
#X11INC = /usr/local/include
#X11LIB = /usr/local/lib
# Xinerama, comment if you don't want it
XINERAMALIBS = -lXinerama
XINERAMAFLAGS = -DXINERAMA
# freetype
FREETYPELIBS = -lfontconfig -lXft
FREETYPEINC = /usr/include/freetype2
# FreeBSD (uncomment)
#FREETYPEINC = /usr/local/include/freetype2
# OpenBSD (uncomment)
#FREETYPEINC = ${X11INC}/freetype2
# OpenBSD - Uncomment this for the swallow patch / SWALLOW_PATCH
#KVMLIB = -lkvm
# Uncomment this for the alpha patch and the winicon patch (BAR_ALPHA_PATCH, BAR_WINICON_PATCH)
XRENDER = -lXrender
# Uncomment this for the mdpcontrol patch / MDPCONTROL_PATCH
#MPDCLIENT = -lmpdclient
# Uncomment for the pango patch / BAR_PANGO_PATCH
PANGOINC = `pkg-config --cflags xft pango pangoxft`
PANGOLIB = `pkg-config --libs xft pango pangoxft`
# Uncomment for the ipc patch / IPC_PATCH
#YAJLLIBS = -lyajl
#YAJLINC = -I/usr/include/yajl
# Uncomment this for the rounded corners patch / ROUNDED_CORNERS_PATCH
#XEXTLIB = -lXext
# Uncomment this for the swallow patch / SWALLOW_PATCH
XCBLIBS = -lX11-xcb -lxcb -lxcb-res
# This is needed for the winicon and tagpreview patches / BAR_WINICON_PATCH / BAR_TAGPREVIEW_PATCH
#IMLIB2LIBS = -lImlib2
# Uncomment for the bidi patch
#BDINC = `pkg-config --cflags fribidi`
#BDLIBS = `pkg-config --libs fribidi`
# includes and libs
INCS = -I${X11INC} -I${FREETYPEINC} ${YAJLINC} ${PANGOINC} ${BDINC}
LIBS = -L${X11LIB} -lX11 ${XINERAMALIBS} ${FREETYPELIBS} ${XRENDER} ${MPDCLIENT} ${XEXTLIB} ${XCBLIBS} ${KVMLIB} ${PANGOLIB} ${YAJLLIBS} ${IMLIB2LIBS} $(BDLIBS)
# flags
CPPFLAGS = -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_XOPEN_SOURCE=700L -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
#CFLAGS = -g -std=c99 -pedantic -Wall -O0 ${INCS} ${CPPFLAGS}
CFLAGS = -std=c99 -pedantic -Wall -Wno-unused-function -Wno-deprecated-declarations -Os ${INCS} ${CPPFLAGS}
LDFLAGS = ${LIBS}
# Solaris
#CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
#LDFLAGS = ${LIBS}
# compiler and linker
CC = cc

1494
patches.h Normal file

File diff suppressed because it is too large Load Diff

2
todo Normal file
View File

@ -0,0 +1,2 @@
# TODO: Put this in picom conf:
shadow-exclude = [ "! _IS_FLOATING@:32c = 1" ];