upg jobextra

This commit is contained in:
joborun linux 2023-01-22 16:03:17 +02:00
parent 86c5c2dd33
commit 397b101432
121 changed files with 6441 additions and 197 deletions

View File

@ -8,9 +8,10 @@
# Contributor : Spyros Stathopoulos <foucault.online[at]gmail[dot]com>
# Contributor : Chris Sakalis <chrissakalis[at]gmail[dot]com>
# based on AUR: conky-lua-archers-git
pkgname=conky
pkgver=1.11.3
pkgrel=04
pkgver=1.17.0
pkgrel=01
pkgdesc="A free, light-weight system monitor for X with lua enabled for Arch based distros"
arch=(x86_64)
url="https://github.com/brndnmtthws/conky"
@ -18,6 +19,11 @@ replaces=('torsmo' 'conky-lua' 'conky-lua-arch' 'conky-lua-archers-git')
provides=("conky=${pkgver}")
conflicts=('conky-lua' 'conky-lua-arch' 'conky-lua-nv' 'conky-lua-archers-git' 'conky-lua-archers')
## Note: after discovering the following running error on our previous edition
## 'E: pyAlsaAudio in not available'
## we decided to add 'python-pyalsa' as make and run dependency
## the error is gone now
## ... end of note
depends=(
'alsa-lib'
'cairo'
@ -32,29 +38,38 @@ depends=(
# 'libxnvctrl'
'lua'
'lua51'
'python-pyalsa'
'tolua++'
# 'wireless_tools'
)
makedepends=(
'cmake'
'docbook2x'
'docbook-xml'
'docbook-xsl'
'git'
'perl-xml-libxml'
'perl-xml-sax-expat'
'python-pyalsa'
)
source=("https://github.com/brndnmtthws/${pkgname}/archive/v${pkgver}.tar.gz")
options=('strip' '!debug' '!emptydirs')
#source=("https://github.com/brndnmtthws/${pkgname}/archive/v${pkgver}.tar.gz")
source=("git+$url.git#commit=8640405583f1f01831c4fae01b7c871f1a7f03b8") # refs/tags/v1.17.0
options=('strip' '!emptydirs')
#pkgver() {
# cd "${srcdir}/${_pkgname}"
# echo "$(git rev-list --count HEAD).$(git rev-parse --short HEAD)"
#}
prepare() {
cd "${srcdir}/${pkgname}-${pkgver}"
cd ${srcdir}/${pkgname}
mkdir -p build/ # as @afaikifreedom recommended
}
build() {
cd ${srcdir}/${pkgname}-${pkgver}
cd ${srcdir}/${pkgname}
cmake \
-D CMAKE_BUILD_TYPE=MinSizeRel \
-D CMAKE_BUILD_TYPE=MinSizeRelease \
-D CMAKE_INSTALL_PREFIX=/usr \
-D MAINTAINER_MODE=OFF \
-D BUILD_BUILTIN_CONFIG=ON \
@ -87,11 +102,11 @@ build() {
}
package() {
cd ${srcdir}/${pkgname}-${pkgver}
cd ${srcdir}/${pkgname}
make DESTDIR=${pkgdir} install
install -D -m644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
install -D -m644 LICENSE.BSD ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.BSD
install -D -m644 extras/vim/syntax/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/syntax/conkyrc.vim
# install -D -m644 extras/vim/syntax/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/syntax/conkyrc.vim
install -D -m644 extras/vim/ftdetect/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/ftdetect/conkyrc.vim
}
@ -99,4 +114,5 @@ package() {
license=('GPL3' 'BSD')
sha256sums=(0140e749537d4d05bf33fbac436e54756faa26021e16f2bca418e9eeea724eb4) # v1.11.3.tar.gz
sha256sums=(SKIP) # conky.git

99
conky/PKGBUILD-aur Normal file
View File

@ -0,0 +1,99 @@
# Maintainer : Yiannis A Ginis <drxspace[at]gmail[dot]com>
# Contributor : Chris Sakalis <chrissakalis[at]gmail[dot]com>
pkgname=conky-lua-archers-git
_pkgname=conky
pkgver=3467.a429eaa6
pkgrel=1
pkgdesc="A free, light-weight system monitor for X with lua enabled for Arch based distros"
arch=('i686' 'x86_64')
url="https://github.com/brndnmtthws/conky/"
license=('GPL3' 'BSD')
replaces=('torsmo' 'conky')
provides=('conky')
conflicts=('conky' 'conky-lua' 'conky-lua-arch' 'conky-lua-nv' 'conky-lua-archers')
depends=(
'alsa-lib'
'cairo'
'curl'
'glib2'
'imlib2'
'libxnvctrl'
'librsvg'
'libxdamage'
'libxft'
'libxinerama'
'libxml2'
'lua'
'lua51'
'tolua++'
'wireless_tools'
)
makedepends=(
'cmake'
'docbook2x'
'docbook-xml'
'docbook-xsl'
'git'
'perl-xml-libxml'
'perl-xml-sax-expat'
)
source=("git://github.com/brndnmtthws/${_pkgname}.git")
sha1sums=('SKIP')
options=('strip' '!debug' '!emptydirs')
pkgver() {
cd "${srcdir}/${_pkgname}"
echo "$(git rev-list --count HEAD).$(git rev-parse --short HEAD)"
}
prepare() {
cd "${srcdir}/${_pkgname}"
mkdir -p build/ # as @afaikifreedom recommended
}
build() {
cd "${srcdir}/${_pkgname}/build"
cmake \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr \
-D MAINTAINER_MODE=ON \
-D BUILD_BUILTIN_CONFIG=ON \
-D BUILD_APCUPSD=ON \
-D BUILD_ARGB=ON \
-D BUILD_CURL=ON \
-D BUILD_I18N=ON \
-D BUILD_IBM=OFF \
-D BUILD_IMLIB2=ON \
-D BUILD_IOSTATS=ON \
-D BUILD_IPV6=ON \
-D BUILD_LUA_CAIRO=ON \
-D BUILD_LUA_IMLIB2=ON \
-D BUILD_LUA_RSVG=ON \
-D BUILD_MOC=OFF \
-D BUILD_MPD=OFF \
-D BUILD_NVIDIA=ON \
-D BUILD_OLD_CONFIG=ON \
-D BUILD_PULSEAUDIO=ON \
-D BUILD_WLAN=ON \
-D BUILD_X11=ON \
-D BUILD_XDAMAGE=ON \
-D BUILD_XDBE=ON \
-D BUILD_XFT=ON \
-D BUILD_XINERAMA=ON \
-D DEFAULTNETDEV=enp7s4 \
-D OWN_WINDOW=ON \
..
make
}
package() {
cd "${srcdir}/${_pkgname}/build"
make DESTDIR=${pkgdir} install
cd ..
install -D -m644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
install -D -m644 LICENSE.BSD ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.BSD
install -D -m644 extras/vim/syntax/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/syntax/conkyrc.vim
install -D -m644 extras/vim/ftdetect/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/ftdetect/conkyrc.vim
}

View File

@ -1,12 +0,0 @@
diff -aur old/doc/config_settings.xml new/doc/config_settings.xml
--- unicode/doc/config_settings.xml 2016-07-20 19:53:48.000000000 +0300
+++ ascii/doc/config_settings-new.xml 2016-08-09 10:05:46.094287298 +0300
@@ -80,7 +80,7 @@
</term>
<listitem>A comma-separated list of strings to use as the bars of a graph output
to console/shell. The first list item is used for the minimum bar height and the
- last item is used for the maximum. Example: " ,_,▁,▂,▃,▄,▅,▆,▇,█".
+ last item is used for the maximum.
<para /></listitem>
</varlistentry>
<varlistentry>

718
conky/conky/FETCH_HEAD Normal file
View File

@ -0,0 +1,718 @@
bc57d7f8dbed670621d075ff590713b391c7630e not-for-merge branch '1.9.0' of https://github.com/brndnmtthws/conky
99f593a344e76b8622949dd4f23f77621d03b05f not-for-merge branch '1.9.1' of https://github.com/brndnmtthws/conky
896edb6f7ec3c8e3497be4eb2d497b423a3b7b77 not-for-merge branch 'dependabot/npm_and_yarn/web/cypress-12.3.0' of https://github.com/brndnmtthws/conky
01be32c44253313faaa02efdfdb358c8a1ff94d9 not-for-merge branch 'dependabot/npm_and_yarn/web/eslint-8.32.0' of https://github.com/brndnmtthws/conky
80eef9828d0ba95c52fed5000944cf846fb5d19f not-for-merge branch 'dependabot/npm_and_yarn/web/next-mdx-remote-4.2.1' of https://github.com/brndnmtthws/conky
3a525bdb0b82cc1b5cd6f718f4f8342ca9e43569 not-for-merge branch 'dependabot/npm_and_yarn/web/postcss-8.4.21' of https://github.com/brndnmtthws/conky
bb7bf3dbecfc98269be53ffa543b369596f04cbd not-for-merge branch 'dependabot/npm_and_yarn/web/tailwindcss/typography-0.5.9' of https://github.com/brndnmtthws/conky
d3e9bcbe71ce5002254aaa8d1aff7433aff3d073 not-for-merge branch 'main' of https://github.com/brndnmtthws/conky
d2e42372d769b9fbc353f7614806b7305ec4cd5b not-for-merge 'refs/pull/1/head' of https://github.com/brndnmtthws/conky
3ea35be534c5575c6a9c5c64cb6cb772b961c0ee not-for-merge 'refs/pull/1/merge' of https://github.com/brndnmtthws/conky
38f05de4ca0649259b5dddee558b83e371e0fc85 not-for-merge 'refs/pull/10/head' of https://github.com/brndnmtthws/conky
4158005645a020bb2da41f545bca4ac370f6487c not-for-merge 'refs/pull/10/merge' of https://github.com/brndnmtthws/conky
0dc9b84e0f1780de4cab9c12708f6f18efdfb6a3 not-for-merge 'refs/pull/1002/head' of https://github.com/brndnmtthws/conky
141d5098484fc1a68113595502088743f7f15256 not-for-merge 'refs/pull/1007/head' of https://github.com/brndnmtthws/conky
71ae128a15b28c49ebffb463bd13ceba6f16f904 not-for-merge 'refs/pull/1010/head' of https://github.com/brndnmtthws/conky
af4896d9ec74a4c4cdfe86375ad0722b27ea4df2 not-for-merge 'refs/pull/1011/head' of https://github.com/brndnmtthws/conky
86e8aa8085c336acbc95947036d7b68e84bc65df not-for-merge 'refs/pull/1012/head' of https://github.com/brndnmtthws/conky
b7a0e926566a84e281cf7f1077ab9763f8a793d2 not-for-merge 'refs/pull/1019/head' of https://github.com/brndnmtthws/conky
6c2865afc3951ed83c4116cbbf1811b033bca038 not-for-merge 'refs/pull/1028/head' of https://github.com/brndnmtthws/conky
93c7fe4279081307c32a53dc65c5ea711079c692 not-for-merge 'refs/pull/1029/head' of https://github.com/brndnmtthws/conky
0aa790baac3942ba013794a3493ed5f679e9b0f6 not-for-merge 'refs/pull/104/head' of https://github.com/brndnmtthws/conky
3215ebe13db313e2fe5fc91c1675fdd10a58e814 not-for-merge 'refs/pull/1042/head' of https://github.com/brndnmtthws/conky
3509d63b67c24dc9867f35e2570a8e8ed776b073 not-for-merge 'refs/pull/1044/head' of https://github.com/brndnmtthws/conky
bd2c2b731372e153cf3a52f6ed34e030e79699e5 not-for-merge 'refs/pull/1047/head' of https://github.com/brndnmtthws/conky
3adfc35bfa5ef3712ce5be49fdc110c96a0b5b4f not-for-merge 'refs/pull/1048/head' of https://github.com/brndnmtthws/conky
fda749039c5d151ff0c6a287e204c83273484fcf not-for-merge 'refs/pull/1053/head' of https://github.com/brndnmtthws/conky
20f6feb5da598fb903f1255a16bc7d8c02753c26 not-for-merge 'refs/pull/1054/head' of https://github.com/brndnmtthws/conky
31777fe6183959249ddf9b738b35886f62851e80 not-for-merge 'refs/pull/1055/head' of https://github.com/brndnmtthws/conky
6c54b060401ade4377b569f9f5ce050002e5bfb3 not-for-merge 'refs/pull/1057/head' of https://github.com/brndnmtthws/conky
c8d5c7390355dd7243cd6bf65ac657b3f9ebce4a not-for-merge 'refs/pull/1066/head' of https://github.com/brndnmtthws/conky
fc56c9b7d7a7d915f7bc8517a052d6743543795b not-for-merge 'refs/pull/1067/head' of https://github.com/brndnmtthws/conky
c3bc21baa05741687499eedd9dc75c065254173c not-for-merge 'refs/pull/107/head' of https://github.com/brndnmtthws/conky
e7c16861e23425dcbb013ce0f860ebf72aa401a2 not-for-merge 'refs/pull/107/merge' of https://github.com/brndnmtthws/conky
70f324b4b013f7c3537d542f10dca76ebc3e06b6 not-for-merge 'refs/pull/1071/head' of https://github.com/brndnmtthws/conky
20bb56e573211cba7f3a99b383b51fb4015134b9 not-for-merge 'refs/pull/1072/head' of https://github.com/brndnmtthws/conky
93263c720f53cad7c4e0fdfbed74a579218e46ee not-for-merge 'refs/pull/1073/head' of https://github.com/brndnmtthws/conky
ee08a9e1b045e8d2f4f13a0e60c2f603b66b0d69 not-for-merge 'refs/pull/108/head' of https://github.com/brndnmtthws/conky
9301c7f4641039acaf7c654c61dffec8aa0a0f54 not-for-merge 'refs/pull/1081/head' of https://github.com/brndnmtthws/conky
1e1d496d0d29cb005a5be31f1326f65f4d0ba8d0 not-for-merge 'refs/pull/1083/head' of https://github.com/brndnmtthws/conky
5aff4cc1dad4154a728029d0a6ccee58728fb0b0 not-for-merge 'refs/pull/1086/head' of https://github.com/brndnmtthws/conky
d3e83c78d29daf6316b9593a18fba07db7f520d7 not-for-merge 'refs/pull/1089/head' of https://github.com/brndnmtthws/conky
730aa20f3c54f6b98f84e18ab0e7d2ac7fc0edb8 not-for-merge 'refs/pull/1092/head' of https://github.com/brndnmtthws/conky
67999efa3094857d1aee6ffa31bd350061ee5164 not-for-merge 'refs/pull/1093/head' of https://github.com/brndnmtthws/conky
8ebb75485d62e80abada4e4fb932eb7f93db80f9 not-for-merge 'refs/pull/1094/head' of https://github.com/brndnmtthws/conky
b08410dab4e85ef3fbcf0a0090a8de2a66c85e07 not-for-merge 'refs/pull/11/head' of https://github.com/brndnmtthws/conky
a055a813e5af7e134ca8d996231a475ee1fa7bf3 not-for-merge 'refs/pull/11/merge' of https://github.com/brndnmtthws/conky
7be3542f7a0a4335a73b557b608fc6ee1c04773a not-for-merge 'refs/pull/1103/head' of https://github.com/brndnmtthws/conky
b36f13e09192bb037446de2d0b4c47e765bbe4a3 not-for-merge 'refs/pull/1104/head' of https://github.com/brndnmtthws/conky
f1a3542734cda5f914c15550c55812c5d26cb1b5 not-for-merge 'refs/pull/111/head' of https://github.com/brndnmtthws/conky
db90dc131c92ae332711f74cad7a633bc90ac38e not-for-merge 'refs/pull/1121/head' of https://github.com/brndnmtthws/conky
bd92c83711b5a3a0ff6b540f6f851d4c9a689e6b not-for-merge 'refs/pull/1122/head' of https://github.com/brndnmtthws/conky
58d59a9f3893f18b5844ca4b6dc1e376d048325c not-for-merge 'refs/pull/1123/head' of https://github.com/brndnmtthws/conky
d6dd45f9b4a6cdc96a363854fe4144297bd491f0 not-for-merge 'refs/pull/1123/merge' of https://github.com/brndnmtthws/conky
fbe651084edac040d7f4118110901e8bdecae5bc not-for-merge 'refs/pull/1124/head' of https://github.com/brndnmtthws/conky
3b656b96fa9b2f9c1b529085b6fe2bff60d73419 not-for-merge 'refs/pull/1135/head' of https://github.com/brndnmtthws/conky
bb613756ca53fd9eff3c9bab4b921741a9c0d04d not-for-merge 'refs/pull/1135/merge' of https://github.com/brndnmtthws/conky
2780aaac29f6df054a64990bd16f2aeb46c3c458 not-for-merge 'refs/pull/1141/head' of https://github.com/brndnmtthws/conky
7397cd48d4007651fc833a1e926f4d2f3a5450a8 not-for-merge 'refs/pull/1148/head' of https://github.com/brndnmtthws/conky
06722e4a2a53a8193efde91034f299eec0a4103d not-for-merge 'refs/pull/115/head' of https://github.com/brndnmtthws/conky
797702270adf3501790916715ad7945a78340993 not-for-merge 'refs/pull/1154/head' of https://github.com/brndnmtthws/conky
74ebc131217bb573dc3f497baebab7d7a9ebd30f not-for-merge 'refs/pull/1154/merge' of https://github.com/brndnmtthws/conky
04f8dd6d620bc1d52eeb30315552c6d8adee001a not-for-merge 'refs/pull/1156/head' of https://github.com/brndnmtthws/conky
bc325b30b059eb5cb59e8c914a0e4d3cea59ff5c not-for-merge 'refs/pull/1156/merge' of https://github.com/brndnmtthws/conky
69c6a55848b805d782feb27c489a8b1f3e5c9d2d not-for-merge 'refs/pull/1157/head' of https://github.com/brndnmtthws/conky
eb6e8b7767f8a2ed57151840a41a04f012f14dbe not-for-merge 'refs/pull/1158/head' of https://github.com/brndnmtthws/conky
7283075c013664c42b9121d32da6c3476e1b32d1 not-for-merge 'refs/pull/1158/merge' of https://github.com/brndnmtthws/conky
0163841ab562635c1e6df6f07896d3445674d14d not-for-merge 'refs/pull/1162/head' of https://github.com/brndnmtthws/conky
0d7a90669f4fd354ce1cf191235df882f42a35be not-for-merge 'refs/pull/1162/merge' of https://github.com/brndnmtthws/conky
2b8be163a6a018cc909ac33391dc6caa93af3542 not-for-merge 'refs/pull/1166/head' of https://github.com/brndnmtthws/conky
5430c4fc0b9f273cda79433d05ce4f4f1ca6a58d not-for-merge 'refs/pull/1169/head' of https://github.com/brndnmtthws/conky
4c22e91bb3928e1d832a606e183613c2157bcd4c not-for-merge 'refs/pull/1170/head' of https://github.com/brndnmtthws/conky
4ca8d61eeb8856b969e2154346b6f78343fdd673 not-for-merge 'refs/pull/1186/head' of https://github.com/brndnmtthws/conky
61db91ca667d57625c4704aa9868ec11943acb71 not-for-merge 'refs/pull/1186/merge' of https://github.com/brndnmtthws/conky
11ec0105612b0995cb3f6a3529ce3377681abe9b not-for-merge 'refs/pull/119/head' of https://github.com/brndnmtthws/conky
0956b689ecc7cb89380a419a1136d53f1f3e4d8f not-for-merge 'refs/pull/120/head' of https://github.com/brndnmtthws/conky
9fda537b179e737416982adf5ba0ba5cd2b34139 not-for-merge 'refs/pull/1204/head' of https://github.com/brndnmtthws/conky
f08e55fca0f2f496617f4aa0e52495821a7c498c not-for-merge 'refs/pull/1205/head' of https://github.com/brndnmtthws/conky
df8036041f7eaba6d454f890698405c4f1c315f6 not-for-merge 'refs/pull/1207/head' of https://github.com/brndnmtthws/conky
a43b673b6f7cc392f7b571fe424e37de2288fde1 not-for-merge 'refs/pull/1209/head' of https://github.com/brndnmtthws/conky
8bf8859c7311d4216bf36c0fffd18853f22e6379 not-for-merge 'refs/pull/122/head' of https://github.com/brndnmtthws/conky
b1dc1a9fc82b5a2ae5b453bf7c74b8249b67a16d not-for-merge 'refs/pull/1220/head' of https://github.com/brndnmtthws/conky
a2dd27f2b0afc87fb5163b84f188db3c9b5f61ff not-for-merge 'refs/pull/1222/head' of https://github.com/brndnmtthws/conky
fa671d7b797de2d3d6b04c01a47953f70208ba7b not-for-merge 'refs/pull/1223/head' of https://github.com/brndnmtthws/conky
199c601686e33f4fe5a03f166bfc78f5b566d4d1 not-for-merge 'refs/pull/1224/head' of https://github.com/brndnmtthws/conky
6a788b04ac52c35a8439cd9d76b384ff23a4b4c8 not-for-merge 'refs/pull/1226/head' of https://github.com/brndnmtthws/conky
4f7fd6aa90c91f37f10500db03ee006550a54522 not-for-merge 'refs/pull/1227/head' of https://github.com/brndnmtthws/conky
87fb67280cf49d1f297701ebdb75770e142cad6b not-for-merge 'refs/pull/1228/head' of https://github.com/brndnmtthws/conky
5ecdc3ce0ef8a42fc5b7569d28051936e1d3c514 not-for-merge 'refs/pull/1229/head' of https://github.com/brndnmtthws/conky
eae22435cbe293d0544e9defb6d48dc28fe49bce not-for-merge 'refs/pull/1230/head' of https://github.com/brndnmtthws/conky
a95fe58fa798a1b347f63c28578f4fa0f346235a not-for-merge 'refs/pull/1231/head' of https://github.com/brndnmtthws/conky
b94f96ad673b23babf68acf29e63d09e6c4a7033 not-for-merge 'refs/pull/1232/head' of https://github.com/brndnmtthws/conky
fb754d445660efc26e2f2d7c3927eb85cb98df58 not-for-merge 'refs/pull/1234/head' of https://github.com/brndnmtthws/conky
99709daa8883f848985bb73982cd273c4f21797f not-for-merge 'refs/pull/1235/head' of https://github.com/brndnmtthws/conky
47cb497b231518c7e8f0de9f8cc690994f3b01d0 not-for-merge 'refs/pull/1236/head' of https://github.com/brndnmtthws/conky
3fa8eeeb63f4f4395efb1c68623028979f2cde4d not-for-merge 'refs/pull/1237/head' of https://github.com/brndnmtthws/conky
231bccd536d23fc555a4e2879cd6494b34eaa1eb not-for-merge 'refs/pull/1238/head' of https://github.com/brndnmtthws/conky
717f4e8bd3092d2e8a0510eeea5a8e388ed4324c not-for-merge 'refs/pull/1239/head' of https://github.com/brndnmtthws/conky
83ab15cc459a19859adf3e451cb2e8c6822ae6d1 not-for-merge 'refs/pull/124/head' of https://github.com/brndnmtthws/conky
ac4e2b1c11d9079d01b9e8392ab05451ae88770e not-for-merge 'refs/pull/124/merge' of https://github.com/brndnmtthws/conky
2ecdec454e1bffb73a5011ec15db0d652a4a18c8 not-for-merge 'refs/pull/1240/head' of https://github.com/brndnmtthws/conky
64befa63a9ab090fa527e030cdb1b122323f57d1 not-for-merge 'refs/pull/1241/head' of https://github.com/brndnmtthws/conky
7024dccae3c7f49856c629a081dc7547729ad3c2 not-for-merge 'refs/pull/1242/head' of https://github.com/brndnmtthws/conky
28484a08b76883ab6280fe1cf6f2ecc2a288bded not-for-merge 'refs/pull/1243/head' of https://github.com/brndnmtthws/conky
f80f6d4c110617fef0c20b2c7d91000422d38b68 not-for-merge 'refs/pull/1244/head' of https://github.com/brndnmtthws/conky
9cb59d966d5169c9c7c0109e3322ae26ffaed167 not-for-merge 'refs/pull/1245/head' of https://github.com/brndnmtthws/conky
0e98d1e1ad81c818cc816b7af5b07fa15ee8e4bb not-for-merge 'refs/pull/1248/head' of https://github.com/brndnmtthws/conky
b5e4056b9d10588e6d741946196821ae5246b82e not-for-merge 'refs/pull/125/head' of https://github.com/brndnmtthws/conky
8a1de4317e438030bdf1213cda92fafd996be22d not-for-merge 'refs/pull/1250/head' of https://github.com/brndnmtthws/conky
cca610be95f4378404d7963a20ec067c6942f918 not-for-merge 'refs/pull/1251/head' of https://github.com/brndnmtthws/conky
29c1881555b7cb28c34aa56c24beca3dafd20124 not-for-merge 'refs/pull/1251/merge' of https://github.com/brndnmtthws/conky
c669cd2a820bb58b2e1c88e233c96959e11ac544 not-for-merge 'refs/pull/1252/head' of https://github.com/brndnmtthws/conky
d6dcf80fb5fbdb4c6992a4f7277b01d03eda903b not-for-merge 'refs/pull/1253/head' of https://github.com/brndnmtthws/conky
483136c3e90849e9a131e0b8f491684605a24bd4 not-for-merge 'refs/pull/1255/head' of https://github.com/brndnmtthws/conky
6a26251800166e007a91d600d419c83e022d485c not-for-merge 'refs/pull/1256/head' of https://github.com/brndnmtthws/conky
9be6c9a7498825914e08da642032d0a3dd549665 not-for-merge 'refs/pull/1257/head' of https://github.com/brndnmtthws/conky
b156f2063c26136a5de78344ab402bd5170462af not-for-merge 'refs/pull/1258/head' of https://github.com/brndnmtthws/conky
77fcf3901e3e5f4a9e4d831fca72e4c69029efa6 not-for-merge 'refs/pull/1259/head' of https://github.com/brndnmtthws/conky
fc6888eee32f783c11faaa7de1c8ab079b833926 not-for-merge 'refs/pull/126/head' of https://github.com/brndnmtthws/conky
7ee4e1c8ff9aa7089fbf411cc19b077d552c9b02 not-for-merge 'refs/pull/1260/head' of https://github.com/brndnmtthws/conky
d976b52a116cfaacae122307aacc006e0628e027 not-for-merge 'refs/pull/1263/head' of https://github.com/brndnmtthws/conky
f0ba21313d2d198531592e2d4edcd1c7e522d546 not-for-merge 'refs/pull/1265/head' of https://github.com/brndnmtthws/conky
34d94d1a7b25a293f5a66e144494ac910b55eb22 not-for-merge 'refs/pull/1266/head' of https://github.com/brndnmtthws/conky
e751f57cd07998231d531f4a7430b7fee21855c3 not-for-merge 'refs/pull/1267/head' of https://github.com/brndnmtthws/conky
ef8b03b03c17403618f48300e43529cbc377b096 not-for-merge 'refs/pull/1268/head' of https://github.com/brndnmtthws/conky
d91412b82abb6f3a7491cb69184c6f74826e878e not-for-merge 'refs/pull/1273/head' of https://github.com/brndnmtthws/conky
cbbdd509e557e423eac76ce688b8e5a90fe94015 not-for-merge 'refs/pull/1274/head' of https://github.com/brndnmtthws/conky
95e5b36106fe3600aa7bdb369f475b6df3150b7c not-for-merge 'refs/pull/1275/head' of https://github.com/brndnmtthws/conky
08823a9bd27c410301d76589f14a9814637e0133 not-for-merge 'refs/pull/1276/head' of https://github.com/brndnmtthws/conky
9f712c251fa9747a72bdf8a67c81cf926c053a3a not-for-merge 'refs/pull/1277/head' of https://github.com/brndnmtthws/conky
b48b3467f3e6c358f2547c5997ee4ce0c8c7e44e not-for-merge 'refs/pull/1278/head' of https://github.com/brndnmtthws/conky
c12348020bd31387cd1a3ced9d9f360fd4ccd8a6 not-for-merge 'refs/pull/1279/head' of https://github.com/brndnmtthws/conky
2104fb5e435deccf4becacbeadd5953ddecb5b7f not-for-merge 'refs/pull/1280/head' of https://github.com/brndnmtthws/conky
1f1236daa474ded1278f0fe5fadc87c77e071efd not-for-merge 'refs/pull/1281/head' of https://github.com/brndnmtthws/conky
1d0c57d2eecd14fb7a4be8b3f8864e1303e1313e not-for-merge 'refs/pull/1282/head' of https://github.com/brndnmtthws/conky
9490fc4565fd96110994161b9950cbf89082b844 not-for-merge 'refs/pull/1284/head' of https://github.com/brndnmtthws/conky
14f1839952c2672662edaa472b37dc1356b73e96 not-for-merge 'refs/pull/1287/head' of https://github.com/brndnmtthws/conky
242ec317d40b3fcc8791faec43253baf85dab7a6 not-for-merge 'refs/pull/1288/head' of https://github.com/brndnmtthws/conky
7042600fc89560023b5aba4b956d846b099b3870 not-for-merge 'refs/pull/1289/head' of https://github.com/brndnmtthws/conky
120dd9b352f744bd71f97a7ac3adc18c11856988 not-for-merge 'refs/pull/1290/head' of https://github.com/brndnmtthws/conky
b6b7976d9102559e893f41fd3f73e0faff3e142c not-for-merge 'refs/pull/1291/head' of https://github.com/brndnmtthws/conky
a468d32e4ffa5d03602b250b3efa501fe937996d not-for-merge 'refs/pull/1293/head' of https://github.com/brndnmtthws/conky
a13e34a57b43d75f1f87ae747ab6b19f78bee641 not-for-merge 'refs/pull/1294/head' of https://github.com/brndnmtthws/conky
5f64c6bc057a8a8af84dbd88d07921c587b308b8 not-for-merge 'refs/pull/1295/head' of https://github.com/brndnmtthws/conky
f6335da0c87cc9cef25d7f4d267de295e6158a4a not-for-merge 'refs/pull/1296/head' of https://github.com/brndnmtthws/conky
033a7bf38a7947eca24be16f35b73a64945ae23c not-for-merge 'refs/pull/1297/head' of https://github.com/brndnmtthws/conky
c050e43c21f064c5f4b6d1a1be3c9c86e9f4ae1a not-for-merge 'refs/pull/1298/head' of https://github.com/brndnmtthws/conky
d28949fa0e8b8c77eedd0a8be0591612119de6aa not-for-merge 'refs/pull/1299/head' of https://github.com/brndnmtthws/conky
550d644e6c05682951aede8c1935201c4f826331 not-for-merge 'refs/pull/13/head' of https://github.com/brndnmtthws/conky
915a5d12eab8d8873777a0a6ea706c9e10d81965 not-for-merge 'refs/pull/13/merge' of https://github.com/brndnmtthws/conky
23891c7cbe0e1ca3141b02995b9ad1156b4bf856 not-for-merge 'refs/pull/1300/head' of https://github.com/brndnmtthws/conky
4e0ea0532e08d898eb94a7c8d807182b5f47441a not-for-merge 'refs/pull/1302/head' of https://github.com/brndnmtthws/conky
64d5f6f36a6559059842b9c69eb6433b516e8eea not-for-merge 'refs/pull/1303/head' of https://github.com/brndnmtthws/conky
c547c00e5f647189631220d729a8ae4c22845e01 not-for-merge 'refs/pull/1304/head' of https://github.com/brndnmtthws/conky
d32d7412122b46060be1529c059912c05a10cfa1 not-for-merge 'refs/pull/1305/head' of https://github.com/brndnmtthws/conky
017acc0b59fc16515d015ee7618ad61c3aaa8043 not-for-merge 'refs/pull/1306/head' of https://github.com/brndnmtthws/conky
75066bd52b78ab5c6a0646163cbea3500c37544a not-for-merge 'refs/pull/1310/head' of https://github.com/brndnmtthws/conky
5e2731943bbd4d21b629e232ac0242a30bfde04f not-for-merge 'refs/pull/1311/head' of https://github.com/brndnmtthws/conky
7f782d5de89f065329a66f4c2e3726be72c6f985 not-for-merge 'refs/pull/1312/head' of https://github.com/brndnmtthws/conky
95959e78b6d847cc1cdbee7e8adbfcf6258a89f8 not-for-merge 'refs/pull/1313/head' of https://github.com/brndnmtthws/conky
00e2acd03d7051520194d99254732a92d0f4e73c not-for-merge 'refs/pull/1315/head' of https://github.com/brndnmtthws/conky
74f5938dd926e54554085d97c6057882b021c357 not-for-merge 'refs/pull/1316/head' of https://github.com/brndnmtthws/conky
9f8a00513123762115fd4b95e396c4cae2da5715 not-for-merge 'refs/pull/1317/head' of https://github.com/brndnmtthws/conky
8845a4aec3c0df923d4a671b9343dba864157cd7 not-for-merge 'refs/pull/1318/head' of https://github.com/brndnmtthws/conky
700f961d8b781614ab2d1c61bffd5b4202b0f89e not-for-merge 'refs/pull/1319/head' of https://github.com/brndnmtthws/conky
da54a2d53dc752c45b46a1c28bf5682b21a545a9 not-for-merge 'refs/pull/1323/head' of https://github.com/brndnmtthws/conky
b060c391afd9fa34e5567aa704acff516bd4b2ab not-for-merge 'refs/pull/1324/head' of https://github.com/brndnmtthws/conky
6870ffaa4765cbedb05982bb3e619a8a2f1d47e9 not-for-merge 'refs/pull/1325/head' of https://github.com/brndnmtthws/conky
6aefbfeea8e4ac89d4df7d516ffe1e75a4fefc09 not-for-merge 'refs/pull/1327/head' of https://github.com/brndnmtthws/conky
e33b13cda43ccc859089b70aca750f278454d8ff not-for-merge 'refs/pull/1328/head' of https://github.com/brndnmtthws/conky
0c567e3cc0104c7d3e7b638ea47c8c389ad2cddf not-for-merge 'refs/pull/1329/head' of https://github.com/brndnmtthws/conky
d4085d923afca4cb9d7854d25b6609c07e6042a4 not-for-merge 'refs/pull/133/head' of https://github.com/brndnmtthws/conky
d84baf055d9893dfc29bdb20dfd7251c7ffb5572 not-for-merge 'refs/pull/133/merge' of https://github.com/brndnmtthws/conky
fdaa91857da063c3481a807374096dbe00fe0a85 not-for-merge 'refs/pull/1330/head' of https://github.com/brndnmtthws/conky
a0eabfeb1d7dbf71fd473562685150f9309e103c not-for-merge 'refs/pull/1331/head' of https://github.com/brndnmtthws/conky
aa3f74f5d705c8f8ee0a1ee1c286bc552d83f1ff not-for-merge 'refs/pull/1332/head' of https://github.com/brndnmtthws/conky
86e88c5967769e4b9fa9b44c9ad2a8453457bb5e not-for-merge 'refs/pull/1333/head' of https://github.com/brndnmtthws/conky
72c1c5e0bfc63197fa783b90b3aa049a9a38dfe2 not-for-merge 'refs/pull/1334/head' of https://github.com/brndnmtthws/conky
67912853cc90bef17a912c4440e0c96ca09a5969 not-for-merge 'refs/pull/1335/head' of https://github.com/brndnmtthws/conky
25a36c5cb4268544caa0843bde968a9c75df6596 not-for-merge 'refs/pull/1337/head' of https://github.com/brndnmtthws/conky
0ab7d5fa3385a99f0719970a3b33ebee25eab91b not-for-merge 'refs/pull/134/head' of https://github.com/brndnmtthws/conky
15ca7cff9af5568295e2c55fc387ac2f4ab37bdb not-for-merge 'refs/pull/1340/head' of https://github.com/brndnmtthws/conky
a89eb65e588b86990389d9bb3ab5746176797ecb not-for-merge 'refs/pull/1341/head' of https://github.com/brndnmtthws/conky
68e01dc343c482eeeb4dab89be1096c46526f600 not-for-merge 'refs/pull/1342/head' of https://github.com/brndnmtthws/conky
51b77da98d4faa1c0caa9705d5ccad9e097fffff not-for-merge 'refs/pull/1343/head' of https://github.com/brndnmtthws/conky
c31f00a637f202a455e9cb6592343171e650cc80 not-for-merge 'refs/pull/1343/merge' of https://github.com/brndnmtthws/conky
61eeee330b04f6f37046b877ed18d9c0c70e0a7e not-for-merge 'refs/pull/1345/head' of https://github.com/brndnmtthws/conky
d85318b1eab212b224a364de5e018ad7b059d62d not-for-merge 'refs/pull/1346/head' of https://github.com/brndnmtthws/conky
88d86877b246791b6740fd8c19b6c52774a38e2b not-for-merge 'refs/pull/1349/head' of https://github.com/brndnmtthws/conky
292c9919beae59f168b578de604037e0dc6e53b5 not-for-merge 'refs/pull/135/head' of https://github.com/brndnmtthws/conky
26a6c926afa50b7afb4ec2be40468e7581484170 not-for-merge 'refs/pull/1351/head' of https://github.com/brndnmtthws/conky
16cf73d8e53d2265fa0866d0ff91c6554334f882 not-for-merge 'refs/pull/1356/head' of https://github.com/brndnmtthws/conky
ecc4704b9f259fa5661ed7e4013c383b171dce32 not-for-merge 'refs/pull/1358/head' of https://github.com/brndnmtthws/conky
b89ee262127ec441382047d1d582d574c4ad94d5 not-for-merge 'refs/pull/1359/head' of https://github.com/brndnmtthws/conky
6026ce16174bbd9905560d48e392bfefe120c3c6 not-for-merge 'refs/pull/136/head' of https://github.com/brndnmtthws/conky
0e3eff99338df5025116e41f4e65a7fbe8d8585a not-for-merge 'refs/pull/136/merge' of https://github.com/brndnmtthws/conky
e293ec1d34bcaecae134bcd7f66dfcabe9789b34 not-for-merge 'refs/pull/1360/head' of https://github.com/brndnmtthws/conky
c29e039e473c001ae89b238b004cd79186f72e96 not-for-merge 'refs/pull/1361/head' of https://github.com/brndnmtthws/conky
7318faa4530c3b6a60809a8cfc2fe9832e450d9b not-for-merge 'refs/pull/1362/head' of https://github.com/brndnmtthws/conky
dc18c450b422b65f3c08aced8aa54caff4e8c1e9 not-for-merge 'refs/pull/1363/head' of https://github.com/brndnmtthws/conky
896edb6f7ec3c8e3497be4eb2d497b423a3b7b77 not-for-merge 'refs/pull/1366/head' of https://github.com/brndnmtthws/conky
07371a2027c591ff54d54b7fd07a3a60c80c0da2 not-for-merge 'refs/pull/1366/merge' of https://github.com/brndnmtthws/conky
3a525bdb0b82cc1b5cd6f718f4f8342ca9e43569 not-for-merge 'refs/pull/1367/head' of https://github.com/brndnmtthws/conky
5c0cb4f0de5b5fa0c7f46860ce4a5bc5cd92afcd not-for-merge 'refs/pull/1367/merge' of https://github.com/brndnmtthws/conky
80eef9828d0ba95c52fed5000944cf846fb5d19f not-for-merge 'refs/pull/1368/head' of https://github.com/brndnmtthws/conky
40b92b4a93b6883d51ef4ff4a98b027535948d30 not-for-merge 'refs/pull/1368/merge' of https://github.com/brndnmtthws/conky
acd1c05d7416ab80f3ba2056122afe72875fc66b not-for-merge 'refs/pull/137/head' of https://github.com/brndnmtthws/conky
01be32c44253313faaa02efdfdb358c8a1ff94d9 not-for-merge 'refs/pull/1373/head' of https://github.com/brndnmtthws/conky
fd8b8f9a85457242b9632e112015c554f3e98f27 not-for-merge 'refs/pull/1373/merge' of https://github.com/brndnmtthws/conky
bb7bf3dbecfc98269be53ffa543b369596f04cbd not-for-merge 'refs/pull/1374/head' of https://github.com/brndnmtthws/conky
74c946a1b71720e78bedf4ff6b87df82ec74208a not-for-merge 'refs/pull/1374/merge' of https://github.com/brndnmtthws/conky
b502ab5f5b3102e3d23c96629859184def45dc12 not-for-merge 'refs/pull/138/head' of https://github.com/brndnmtthws/conky
56b5a7eecae47f13bd5a4bc496863e179285667d not-for-merge 'refs/pull/14/head' of https://github.com/brndnmtthws/conky
79d5ddd5b50fbb89cf422671557eb0c333c1a5c8 not-for-merge 'refs/pull/14/merge' of https://github.com/brndnmtthws/conky
caefe535c798c5e17480200f0d29a09233a28316 not-for-merge 'refs/pull/140/head' of https://github.com/brndnmtthws/conky
c7108d8261fd8108dee5383c1df10bc08d8c5e7b not-for-merge 'refs/pull/141/head' of https://github.com/brndnmtthws/conky
45449c7348ae37ce9fa8ca785fdea1bb32a63552 not-for-merge 'refs/pull/148/head' of https://github.com/brndnmtthws/conky
4868ca0cadb2137ddcc03f16cd1198833fe6f0fd not-for-merge 'refs/pull/148/merge' of https://github.com/brndnmtthws/conky
d80a97d2f2b5bb0f7c81d653f65097ecfaa97aee not-for-merge 'refs/pull/15/head' of https://github.com/brndnmtthws/conky
a286983c4e27fac8b01102eecb120d8175958ccd not-for-merge 'refs/pull/15/merge' of https://github.com/brndnmtthws/conky
2c035f3cb01c148811d8be75977058ec7de84d29 not-for-merge 'refs/pull/154/head' of https://github.com/brndnmtthws/conky
96e4313a47be90ab32b6259b686682d42089a38d not-for-merge 'refs/pull/157/head' of https://github.com/brndnmtthws/conky
ba76bf00ae9d4f02342204ca8dcdc91f37e98bf3 not-for-merge 'refs/pull/16/head' of https://github.com/brndnmtthws/conky
439bee229d84158c8f22eaa13972c9c6e0957a42 not-for-merge 'refs/pull/16/merge' of https://github.com/brndnmtthws/conky
1dd6a47c2488a08a9930abec78452de706e84a83 not-for-merge 'refs/pull/160/head' of https://github.com/brndnmtthws/conky
2231588b284c5b04043d01b1b2036f851161d563 not-for-merge 'refs/pull/161/head' of https://github.com/brndnmtthws/conky
01301f31a3e88e3597f11999a8228e0407f2c04b not-for-merge 'refs/pull/163/head' of https://github.com/brndnmtthws/conky
3a574ba88b8ee8dffe748bb7f6af9d240314f994 not-for-merge 'refs/pull/165/head' of https://github.com/brndnmtthws/conky
2f362e44a59aef11a9b1c84b4d0da6be172effe1 not-for-merge 'refs/pull/166/head' of https://github.com/brndnmtthws/conky
162d9d13b7fe27ded15860e9ac311f4e07e7d40a not-for-merge 'refs/pull/173/head' of https://github.com/brndnmtthws/conky
b82eaa2333d6c2225dc19ccc9c53e645aaac85ce not-for-merge 'refs/pull/176/head' of https://github.com/brndnmtthws/conky
ce08b9fe7b20454870a4aae20b442da24ce51dcd not-for-merge 'refs/pull/177/head' of https://github.com/brndnmtthws/conky
2599288a972003e6461fed0abbdb71aad644a3bb not-for-merge 'refs/pull/178/head' of https://github.com/brndnmtthws/conky
300560dbd45c297fa349c8d10954a41a90602f0a not-for-merge 'refs/pull/179/head' of https://github.com/brndnmtthws/conky
22fe3b1ea4f450061dc8dcff1bf4b8c4b560cd7f not-for-merge 'refs/pull/181/head' of https://github.com/brndnmtthws/conky
d8f75860b25aa0de8f0582a8fc1143b648158a05 not-for-merge 'refs/pull/182/head' of https://github.com/brndnmtthws/conky
0dbd27d2de25f6dc89fd34a5c5504d2bb32fe6ac not-for-merge 'refs/pull/184/head' of https://github.com/brndnmtthws/conky
e7cdccd964e56df89a34fd6d67601d27db061036 not-for-merge 'refs/pull/185/head' of https://github.com/brndnmtthws/conky
35b4d472c597cfc40b53695a63b89138fa13bf42 not-for-merge 'refs/pull/186/head' of https://github.com/brndnmtthws/conky
6526a275b03735dc3d0395349cee71482a2265b1 not-for-merge 'refs/pull/186/merge' of https://github.com/brndnmtthws/conky
57d9fdd0e097b6a76fea15b9bc5763396a838ede not-for-merge 'refs/pull/192/head' of https://github.com/brndnmtthws/conky
3e011d935bbe0019eb4ad265cbefcbc4491dccfd not-for-merge 'refs/pull/195/head' of https://github.com/brndnmtthws/conky
92afba39bec163e4f4421d57180926e6c7018f86 not-for-merge 'refs/pull/195/merge' of https://github.com/brndnmtthws/conky
7dff2e5577b66c4464a5949dade409c064be493e not-for-merge 'refs/pull/196/head' of https://github.com/brndnmtthws/conky
98c4100b66d441c9e96a3d7adfd04e4c5501253c not-for-merge 'refs/pull/198/head' of https://github.com/brndnmtthws/conky
0e1f4526b425401a4ef882b5b1f104384e1f3c15 not-for-merge 'refs/pull/2/head' of https://github.com/brndnmtthws/conky
068d189597ff6aaac230f06d5341497c52889ec0 not-for-merge 'refs/pull/2/merge' of https://github.com/brndnmtthws/conky
48afdbf377f4a01768293e70a903fc11c9b5eccc not-for-merge 'refs/pull/200/head' of https://github.com/brndnmtthws/conky
955eaa2390ac7cacc5ccda73c703df48142b9fd8 not-for-merge 'refs/pull/200/merge' of https://github.com/brndnmtthws/conky
3ced96bbf02b6b0afbecdf8ac4f2834d3a8bb46e not-for-merge 'refs/pull/202/head' of https://github.com/brndnmtthws/conky
eaa3ed864c600fdc08078a171638a976efa52cda not-for-merge 'refs/pull/202/merge' of https://github.com/brndnmtthws/conky
505c4286b4829facd420629e77a392478a2c0f5e not-for-merge 'refs/pull/209/head' of https://github.com/brndnmtthws/conky
1aaff10997a438075b3714238941836bb72e129c not-for-merge 'refs/pull/213/head' of https://github.com/brndnmtthws/conky
d5fe4558f59f1778762354b59dd187f9151fb61f not-for-merge 'refs/pull/214/head' of https://github.com/brndnmtthws/conky
e0d74da6e77e12d0bab498f26fe5b4565a7e62e6 not-for-merge 'refs/pull/215/head' of https://github.com/brndnmtthws/conky
8ccadeb7bb622d56fe79e1ef26eb1c83b0737909 not-for-merge 'refs/pull/219/head' of https://github.com/brndnmtthws/conky
f670e70d7c0ffcc602f40aa1856fe085e5800455 not-for-merge 'refs/pull/22/head' of https://github.com/brndnmtthws/conky
364009fa6e04b62679a88dcab859f690976ea0e9 not-for-merge 'refs/pull/22/merge' of https://github.com/brndnmtthws/conky
933852d1b8194f1b22cd458ad412f52803a256f2 not-for-merge 'refs/pull/226/head' of https://github.com/brndnmtthws/conky
67e814f1822efb278b631b44f1fe9f37bd22bf68 not-for-merge 'refs/pull/227/head' of https://github.com/brndnmtthws/conky
32a7343539d804c93937dd7f148b65a705963a52 not-for-merge 'refs/pull/23/head' of https://github.com/brndnmtthws/conky
6f7cf4acfea70329085643c6b26f5d154912c038 not-for-merge 'refs/pull/23/merge' of https://github.com/brndnmtthws/conky
5b590ad6e2af3a161cab56a2694286d1f4ce54e9 not-for-merge 'refs/pull/230/head' of https://github.com/brndnmtthws/conky
32d93ff763df7ba6ade0c7d739c758fa51223eac not-for-merge 'refs/pull/232/head' of https://github.com/brndnmtthws/conky
a90faa2145d70d65c41279c10d03fd4b5f3e4c25 not-for-merge 'refs/pull/233/head' of https://github.com/brndnmtthws/conky
94d8c057bdd77fbbecabe0a58325da9406a8fb60 not-for-merge 'refs/pull/237/head' of https://github.com/brndnmtthws/conky
57647fff7eefb438ffcd2ca0b32abb0124eee6d8 not-for-merge 'refs/pull/237/merge' of https://github.com/brndnmtthws/conky
8a7d7a3d904b2a4ac7d14f65a936a181567ba563 not-for-merge 'refs/pull/238/head' of https://github.com/brndnmtthws/conky
f3b58d7a891189f86fd3fa4d6ce309c24f4b9d73 not-for-merge 'refs/pull/24/head' of https://github.com/brndnmtthws/conky
bcd2991d78ccad01a4580a33639c670cb11939c6 not-for-merge 'refs/pull/24/merge' of https://github.com/brndnmtthws/conky
622516d12ab09f749b66b6b99867cc248cb0cc4f not-for-merge 'refs/pull/247/head' of https://github.com/brndnmtthws/conky
80153712415dde336e1ee1506a0a72a1aa65f8b9 not-for-merge 'refs/pull/248/head' of https://github.com/brndnmtthws/conky
aa9ef97b73900b8313c06f49e77f5ed72af1c731 not-for-merge 'refs/pull/250/head' of https://github.com/brndnmtthws/conky
ee15bff5fc04a069dfab504b9c9bbf986d79644e not-for-merge 'refs/pull/252/head' of https://github.com/brndnmtthws/conky
bf4d99ad8140145787f3fd5ce758a4fb3c7b8712 not-for-merge 'refs/pull/254/head' of https://github.com/brndnmtthws/conky
bd4e04664cf8848e177d3ee2b010cd41fbd1b608 not-for-merge 'refs/pull/257/head' of https://github.com/brndnmtthws/conky
3c1705c453502492394330323c25bfa8e3cc72d2 not-for-merge 'refs/pull/260/head' of https://github.com/brndnmtthws/conky
b4ab88c2ecbce9b354096e4295603b8d882a69bc not-for-merge 'refs/pull/261/head' of https://github.com/brndnmtthws/conky
4d205ab9a3e1b6f58d831415b027a3ff06839ed4 not-for-merge 'refs/pull/265/head' of https://github.com/brndnmtthws/conky
1454c38f3d4d250bbf93c2b2eea33f289e7d9985 not-for-merge 'refs/pull/267/head' of https://github.com/brndnmtthws/conky
0dd70f711c02e2b89344c5bfa168812f10a1093f not-for-merge 'refs/pull/268/head' of https://github.com/brndnmtthws/conky
7877dd98cd167d46aa3ffe65c25a2abe1936e884 not-for-merge 'refs/pull/270/head' of https://github.com/brndnmtthws/conky
d1047dca37107a2623072895aa9ddeefccdf43c8 not-for-merge 'refs/pull/271/head' of https://github.com/brndnmtthws/conky
545ee56c48aa909cae5ac886a7ad78973ec40211 not-for-merge 'refs/pull/278/head' of https://github.com/brndnmtthws/conky
76fb45b1fbcd44644d93ac0475c860db00a4a3ac not-for-merge 'refs/pull/279/head' of https://github.com/brndnmtthws/conky
220438345cefb411dbe30f66189cd1bdc940b02d not-for-merge 'refs/pull/281/head' of https://github.com/brndnmtthws/conky
6667415960392c3216f6fc1df0bcbf4d0ead56ce not-for-merge 'refs/pull/283/head' of https://github.com/brndnmtthws/conky
d97f715a23c3c5702c7976d138a2c14010287372 not-for-merge 'refs/pull/286/head' of https://github.com/brndnmtthws/conky
476c31247dcb0670801e73dfa9b33d8e62b7a1d2 not-for-merge 'refs/pull/286/merge' of https://github.com/brndnmtthws/conky
3807bfef63d7aed80b289de72ed16b91d77a8bc0 not-for-merge 'refs/pull/287/head' of https://github.com/brndnmtthws/conky
001fe254057033221891dbc1c56225c00c0fb5a5 not-for-merge 'refs/pull/29/head' of https://github.com/brndnmtthws/conky
0329c6f56502208788ab2234fd29ad9f34330da2 not-for-merge 'refs/pull/291/head' of https://github.com/brndnmtthws/conky
db270a72b39dae2c7be55f2b78d5216785efc1d8 not-for-merge 'refs/pull/292/head' of https://github.com/brndnmtthws/conky
3e77ae74bf5a7b3b5666060db57468dedcbcbd65 not-for-merge 'refs/pull/297/head' of https://github.com/brndnmtthws/conky
24eb5f9de3e481e7d74af149744e2d474c9ffb8e not-for-merge 'refs/pull/299/head' of https://github.com/brndnmtthws/conky
b0a22d534d321f21ce7e6fe1d099271da28010eb not-for-merge 'refs/pull/3/head' of https://github.com/brndnmtthws/conky
28aba12ddbfc241f68c27f1315841969b78bb25a not-for-merge 'refs/pull/3/merge' of https://github.com/brndnmtthws/conky
935280e36ce2d30187c814da60808da61c1d122b not-for-merge 'refs/pull/30/head' of https://github.com/brndnmtthws/conky
7a284dd37d3538d2329a369187d8a26fb148a343 not-for-merge 'refs/pull/304/head' of https://github.com/brndnmtthws/conky
9ae9ceceabb630b4625b717affef7cb9a1980e77 not-for-merge 'refs/pull/309/head' of https://github.com/brndnmtthws/conky
361e1224b51cc3dd8cfb323905af13e18446c015 not-for-merge 'refs/pull/31/head' of https://github.com/brndnmtthws/conky
9e37808b16ce4969b211ce9361893c273bb1a705 not-for-merge 'refs/pull/31/merge' of https://github.com/brndnmtthws/conky
633f54214b616ef91207ae5b8c7dcca9f5397dbc not-for-merge 'refs/pull/317/head' of https://github.com/brndnmtthws/conky
ee9504bff7ecdb00887c1ddb99026dfb2aa4d842 not-for-merge 'refs/pull/321/head' of https://github.com/brndnmtthws/conky
6aa4f77db7bb5894a4888bea4452a6ec41ea1f2d not-for-merge 'refs/pull/323/head' of https://github.com/brndnmtthws/conky
e21586ca95edff9a429e988ce711603fd0b6b48a not-for-merge 'refs/pull/325/head' of https://github.com/brndnmtthws/conky
12829e0fd363248d7f677ca57db2ba6159bc9170 not-for-merge 'refs/pull/326/head' of https://github.com/brndnmtthws/conky
f8d71d261a189226294eb6226bc2a9ce2661ad8d not-for-merge 'refs/pull/327/head' of https://github.com/brndnmtthws/conky
68263d4556627f9c1033bf348f81287111d48b94 not-for-merge 'refs/pull/33/head' of https://github.com/brndnmtthws/conky
e18dbfc6786b54447c3394d9a9b1522232facdaa not-for-merge 'refs/pull/330/head' of https://github.com/brndnmtthws/conky
0e62dc28049643f1c6b300277d27828b22b5a15c not-for-merge 'refs/pull/333/head' of https://github.com/brndnmtthws/conky
cb51234e4a6fda3489e8a1e263d63106aa09b2d5 not-for-merge 'refs/pull/336/head' of https://github.com/brndnmtthws/conky
5a4437009747fa9f7b4aaa8a6420b45c9d7dd5b9 not-for-merge 'refs/pull/336/merge' of https://github.com/brndnmtthws/conky
5ea37b4b521823352f97307e562336a54073a93a not-for-merge 'refs/pull/34/head' of https://github.com/brndnmtthws/conky
704b30be9cc42e1ac284f0c1b79e9a64be943723 not-for-merge 'refs/pull/344/head' of https://github.com/brndnmtthws/conky
2319a98936c8c5c3065da3fe919bf5ee04e63ae7 not-for-merge 'refs/pull/346/head' of https://github.com/brndnmtthws/conky
ac4cefe4b7093374aca264ee219dd79950fb5d23 not-for-merge 'refs/pull/356/head' of https://github.com/brndnmtthws/conky
f4904943bc28b2ee35dd549a6d6d840723ee50bd not-for-merge 'refs/pull/357/head' of https://github.com/brndnmtthws/conky
cb5401d7e267ef92cb8dead4298a75005ed5c617 not-for-merge 'refs/pull/359/head' of https://github.com/brndnmtthws/conky
99f593a344e76b8622949dd4f23f77621d03b05f not-for-merge 'refs/pull/361/head' of https://github.com/brndnmtthws/conky
bcaeffd62b3853bfc4e0714e11016d27d570ebfa not-for-merge 'refs/pull/362/head' of https://github.com/brndnmtthws/conky
26becd70f40ec7c5c9edc9cb226a7ea45c161823 not-for-merge 'refs/pull/363/head' of https://github.com/brndnmtthws/conky
4cf2838ffbe8f7f40da530f123915f43f64116c4 not-for-merge 'refs/pull/367/head' of https://github.com/brndnmtthws/conky
5b67c01838a05904ec41a72fb0dec7151eb8eb2c not-for-merge 'refs/pull/369/head' of https://github.com/brndnmtthws/conky
cfd4e67c7539121055ded73c32aef9b0fdc75bd9 not-for-merge 'refs/pull/37/head' of https://github.com/brndnmtthws/conky
b9def6994c439188d75dba2bf78a1dcf8acceb4b not-for-merge 'refs/pull/370/head' of https://github.com/brndnmtthws/conky
649dee4d6201095f6bd9aafdb88fbd85997c513b not-for-merge 'refs/pull/371/head' of https://github.com/brndnmtthws/conky
7a8c3b51799f64797fbf4e467ded10032e628257 not-for-merge 'refs/pull/372/head' of https://github.com/brndnmtthws/conky
71bf0e6a955add5b5003c363aae2ae2da397da75 not-for-merge 'refs/pull/375/head' of https://github.com/brndnmtthws/conky
62cfd67728b9bc35ab1493eb2f50ebc5f1c4bcfb not-for-merge 'refs/pull/38/head' of https://github.com/brndnmtthws/conky
8a04c9ce3fa8df75a739b1ce82086d911fdec656 not-for-merge 'refs/pull/380/head' of https://github.com/brndnmtthws/conky
1db4a0c65c4f84c2ed934fd070fc46b68dede2f1 not-for-merge 'refs/pull/382/head' of https://github.com/brndnmtthws/conky
27dcffe2f571cad595581d5d107c1eedb7883441 not-for-merge 'refs/pull/383/head' of https://github.com/brndnmtthws/conky
8711bc5142b95965efbae234c429a1ac6bbccf7e not-for-merge 'refs/pull/384/head' of https://github.com/brndnmtthws/conky
2a1afbbbbab23bd4f2757b8ead6f0db2be21555c not-for-merge 'refs/pull/4/head' of https://github.com/brndnmtthws/conky
5045fc742282a2a04072c785ab0e9447a67714ab not-for-merge 'refs/pull/4/merge' of https://github.com/brndnmtthws/conky
6140122b82d50acc333e5d2a813cc1933ecc6d21 not-for-merge 'refs/pull/402/head' of https://github.com/brndnmtthws/conky
a686d60bb26152bb00a68b64c1921d97e3c43058 not-for-merge 'refs/pull/405/head' of https://github.com/brndnmtthws/conky
3e170a6639ec5ae0fd056d9a55a17879e61cce5e not-for-merge 'refs/pull/406/head' of https://github.com/brndnmtthws/conky
8016301f98230b162750856eb1e22efa4648a28c not-for-merge 'refs/pull/406/merge' of https://github.com/brndnmtthws/conky
d3065426868cdf63ccbbaf6afd917de64403ae49 not-for-merge 'refs/pull/416/head' of https://github.com/brndnmtthws/conky
f8efb67513ff4ad2f1eb7e169502693240d9809d not-for-merge 'refs/pull/428/head' of https://github.com/brndnmtthws/conky
0071682b1836396a7c424a41c44c25d78f5f8628 not-for-merge 'refs/pull/428/merge' of https://github.com/brndnmtthws/conky
b12e0acaa131a294da178edf4a3b2b996f7a7edb not-for-merge 'refs/pull/429/head' of https://github.com/brndnmtthws/conky
2e1f021dd48edb845e465c6239098a8cb04a29c2 not-for-merge 'refs/pull/433/head' of https://github.com/brndnmtthws/conky
cda5afda69764acbbb2374eb3bc1abb7dd4c9ac8 not-for-merge 'refs/pull/44/head' of https://github.com/brndnmtthws/conky
2a899e73bd085458ae6882fb00afec3cddfe1791 not-for-merge 'refs/pull/442/head' of https://github.com/brndnmtthws/conky
3ab4eeeb958d1ba723268a1cc52c21e7fdfc91a7 not-for-merge 'refs/pull/442/merge' of https://github.com/brndnmtthws/conky
cdd2e2e12ea6be59651f31c50089897da69a3876 not-for-merge 'refs/pull/445/head' of https://github.com/brndnmtthws/conky
0006dc09dd3139b952344a4e286e1cf9c809e8ca not-for-merge 'refs/pull/453/head' of https://github.com/brndnmtthws/conky
b0f02c20a039f6c33dbc631102bf7d891f620bcc not-for-merge 'refs/pull/455/head' of https://github.com/brndnmtthws/conky
a7edeeb072a5af9fa9dbe78fba7f2e17705936a0 not-for-merge 'refs/pull/457/head' of https://github.com/brndnmtthws/conky
96bc1ae32d5ef2192c72d58be8a063b987d65c22 not-for-merge 'refs/pull/457/merge' of https://github.com/brndnmtthws/conky
136bcce2a2ebd41b48b99d634c1c248301c4c6ca not-for-merge 'refs/pull/458/head' of https://github.com/brndnmtthws/conky
b203f35f5259f9d36b8b0e4a610ebd5ad17e6a36 not-for-merge 'refs/pull/458/merge' of https://github.com/brndnmtthws/conky
f20536d3c18d7af7dcc3d6b441ba6e53febfed01 not-for-merge 'refs/pull/459/head' of https://github.com/brndnmtthws/conky
1f5497255e598a2cb3d12f8fc177fcc78b88d8b5 not-for-merge 'refs/pull/462/head' of https://github.com/brndnmtthws/conky
139ea1d593a22052aa9d9e7872b6071a721c6de6 not-for-merge 'refs/pull/464/head' of https://github.com/brndnmtthws/conky
99ce87ba20a16bf2d11d922fb2aa35e489f3d20e not-for-merge 'refs/pull/465/head' of https://github.com/brndnmtthws/conky
0fb5d65b22e7bb45c2860572a5ccca8c65189aac not-for-merge 'refs/pull/47/head' of https://github.com/brndnmtthws/conky
eb4a01a26a35d0838384f252937c422cde529201 not-for-merge 'refs/pull/479/head' of https://github.com/brndnmtthws/conky
9809f7cd91be1aa56932e655a78cad451f236304 not-for-merge 'refs/pull/48/head' of https://github.com/brndnmtthws/conky
ba385a3a15a52966abb2e18d8a200d08f65c77ad not-for-merge 'refs/pull/480/head' of https://github.com/brndnmtthws/conky
699e9fbcbabde651079aeafa0484096437cf8e8e not-for-merge 'refs/pull/482/head' of https://github.com/brndnmtthws/conky
7bc6e300af0f4d7ddb9311a0a1860e288bdafaee not-for-merge 'refs/pull/486/head' of https://github.com/brndnmtthws/conky
496172a3fa0d783d7342f4a3a84dc8d4e89b5e87 not-for-merge 'refs/pull/487/head' of https://github.com/brndnmtthws/conky
3cb318de11c5995e9d66564a90b28c381629bfd5 not-for-merge 'refs/pull/487/merge' of https://github.com/brndnmtthws/conky
d06e020a4e9545e403fe05786811564ac5c68289 not-for-merge 'refs/pull/488/head' of https://github.com/brndnmtthws/conky
b91797ab9d7fac0996bd5740013fef3cb6f94c41 not-for-merge 'refs/pull/489/head' of https://github.com/brndnmtthws/conky
476b70a2d38f530fcde97e20014f46efc51c5c8a not-for-merge 'refs/pull/490/head' of https://github.com/brndnmtthws/conky
ed10d927c7932afb6464cdd50ddc5a2f3d2089dc not-for-merge 'refs/pull/491/head' of https://github.com/brndnmtthws/conky
5984d9e562d8ddb66fe7e623900a41b3b63c470c not-for-merge 'refs/pull/492/head' of https://github.com/brndnmtthws/conky
bc1c2126927ad1037a25bec91f6216c4e63e0ee6 not-for-merge 'refs/pull/493/head' of https://github.com/brndnmtthws/conky
b788aa76dd41e966d959c7acb9a6db16faa27330 not-for-merge 'refs/pull/494/head' of https://github.com/brndnmtthws/conky
14b5c8da556795d6bcf1a9e7f6e74a6abbb3fedd not-for-merge 'refs/pull/495/head' of https://github.com/brndnmtthws/conky
b1de1fa43a9429c6bb51ea3caf25cb03a761327c not-for-merge 'refs/pull/496/head' of https://github.com/brndnmtthws/conky
522a865c4eb9bed870d4fc1526ce272f4114c89f not-for-merge 'refs/pull/497/head' of https://github.com/brndnmtthws/conky
33383d322bec3df938bba1ea83d63b640516f984 not-for-merge 'refs/pull/497/merge' of https://github.com/brndnmtthws/conky
03d1bc7d10b60a5ec629e3f119e7cc87230a9e52 not-for-merge 'refs/pull/498/head' of https://github.com/brndnmtthws/conky
bc1c2126927ad1037a25bec91f6216c4e63e0ee6 not-for-merge 'refs/pull/499/head' of https://github.com/brndnmtthws/conky
894d817dd6eeb9bd1b9f7424d62aa3a2d2043822 not-for-merge 'refs/pull/499/merge' of https://github.com/brndnmtthws/conky
3eb3ed319a3a4750563600ed1e4ff52d2fc7e359 not-for-merge 'refs/pull/5/head' of https://github.com/brndnmtthws/conky
de2e3c8024d0f64d8bd9f7ca2df0c3d5fd2733af not-for-merge 'refs/pull/5/merge' of https://github.com/brndnmtthws/conky
f48c80cad114573a113810911d5fda4a1ab295e5 not-for-merge 'refs/pull/50/head' of https://github.com/brndnmtthws/conky
551a277fb931c7300648e4e7c7a5f4b2bdad22b1 not-for-merge 'refs/pull/500/head' of https://github.com/brndnmtthws/conky
d476e87b6ffcc25ba361770811d6a8b5c601d37d not-for-merge 'refs/pull/501/head' of https://github.com/brndnmtthws/conky
be5c25d577dc2daf9129d9f73fda562f806a6833 not-for-merge 'refs/pull/502/head' of https://github.com/brndnmtthws/conky
a082267715e65e5dfd884b5d029f4a75600c5973 not-for-merge 'refs/pull/504/head' of https://github.com/brndnmtthws/conky
cae08cc680163e87a0c46ae25fc42bc39436d803 not-for-merge 'refs/pull/505/head' of https://github.com/brndnmtthws/conky
03f8c9dacd95692c96872e795cb6511eb09e7f28 not-for-merge 'refs/pull/506/head' of https://github.com/brndnmtthws/conky
ec3d61ea1a4d419d112ae125e42aa972c7e95168 not-for-merge 'refs/pull/506/merge' of https://github.com/brndnmtthws/conky
4db51d979c49324a05807a4c4e72a7409bbec607 not-for-merge 'refs/pull/507/head' of https://github.com/brndnmtthws/conky
a474edce46b5f38c269425342100ca414aa5e7f8 not-for-merge 'refs/pull/508/head' of https://github.com/brndnmtthws/conky
4db51d979c49324a05807a4c4e72a7409bbec607 not-for-merge 'refs/pull/509/head' of https://github.com/brndnmtthws/conky
db3c105642409fe035602f3564e0cb4a0d82d646 not-for-merge 'refs/pull/509/merge' of https://github.com/brndnmtthws/conky
8aee8d5e33351258dc28161b680f24631ec00396 not-for-merge 'refs/pull/514/head' of https://github.com/brndnmtthws/conky
c6d2a43d28c4f5970cd262ac0d88f22f37f6ed66 not-for-merge 'refs/pull/52/head' of https://github.com/brndnmtthws/conky
06b2ddcfd1987226105b617ccb52e657c3cf45ba not-for-merge 'refs/pull/524/head' of https://github.com/brndnmtthws/conky
06b2ddcfd1987226105b617ccb52e657c3cf45ba not-for-merge 'refs/pull/525/head' of https://github.com/brndnmtthws/conky
dde16253760bdfeb08d84f1de6202cff83efcfe0 not-for-merge 'refs/pull/525/merge' of https://github.com/brndnmtthws/conky
8d3c4bb5b2ae26e01afacbb385e4654d985b5b7a not-for-merge 'refs/pull/528/head' of https://github.com/brndnmtthws/conky
8d3c4bb5b2ae26e01afacbb385e4654d985b5b7a not-for-merge 'refs/pull/529/head' of https://github.com/brndnmtthws/conky
8bb8e36241364d76e522d0c7a27d47d2344e9b43 not-for-merge 'refs/pull/529/merge' of https://github.com/brndnmtthws/conky
d8e21721b6dfbcf2619e1bb07bb23dca2c6c21a0 not-for-merge 'refs/pull/53/head' of https://github.com/brndnmtthws/conky
0904c08e9d6a4235faf400d1bc1f08f450eabdab not-for-merge 'refs/pull/530/head' of https://github.com/brndnmtthws/conky
4647b0a86fe3feec04e4bb37fc4230d11f4ae087 not-for-merge 'refs/pull/530/merge' of https://github.com/brndnmtthws/conky
b83646de2fa012b103fd12023b272edd6dc2398e not-for-merge 'refs/pull/532/head' of https://github.com/brndnmtthws/conky
a299cf5961dbe2bcd9ecc33b4d41fe0584917d16 not-for-merge 'refs/pull/534/head' of https://github.com/brndnmtthws/conky
6aabce2c18ccbb65d81e926cfdcfdee7c4300041 not-for-merge 'refs/pull/534/merge' of https://github.com/brndnmtthws/conky
a299cf5961dbe2bcd9ecc33b4d41fe0584917d16 not-for-merge 'refs/pull/535/head' of https://github.com/brndnmtthws/conky
3e85698458c6857b101ceaed1fa862907d086025 not-for-merge 'refs/pull/54/head' of https://github.com/brndnmtthws/conky
d04f21efe6d0349c1ec6e7917aa6284fcbe2bae5 not-for-merge 'refs/pull/540/head' of https://github.com/brndnmtthws/conky
d04f21efe6d0349c1ec6e7917aa6284fcbe2bae5 not-for-merge 'refs/pull/541/head' of https://github.com/brndnmtthws/conky
24cea025cd267e17e40db0c0a24966d5c6091767 not-for-merge 'refs/pull/541/merge' of https://github.com/brndnmtthws/conky
9ce42a83039430287db711e95d1583cb942ef511 not-for-merge 'refs/pull/543/head' of https://github.com/brndnmtthws/conky
3840e952bfc0f175d692f10308bef435e347b2a2 not-for-merge 'refs/pull/544/head' of https://github.com/brndnmtthws/conky
bd0c2dd6a23a27a5dbfebed284dcd59ab0245a12 not-for-merge 'refs/pull/544/merge' of https://github.com/brndnmtthws/conky
246aa5d5e91e75b8b1651a06bf4c1d92832f06e0 not-for-merge 'refs/pull/545/head' of https://github.com/brndnmtthws/conky
52e0a74ffa21594a6dba24e75fcd5937e33aef42 not-for-merge 'refs/pull/548/head' of https://github.com/brndnmtthws/conky
7dacee7c00cb806915bd1768dfab283be3649603 not-for-merge 'refs/pull/548/merge' of https://github.com/brndnmtthws/conky
20cc2c9db9c851a4633357ea5e07a330be5393e3 not-for-merge 'refs/pull/549/head' of https://github.com/brndnmtthws/conky
690cd5cbf6c9ef9460020a8e3e35c4e0375803dd not-for-merge 'refs/pull/550/head' of https://github.com/brndnmtthws/conky
4709bca377e4339831ade8e2148a45d72bd156af not-for-merge 'refs/pull/551/head' of https://github.com/brndnmtthws/conky
c943217a51d53f53c1ba50e064ce5144e1c9d833 not-for-merge 'refs/pull/553/head' of https://github.com/brndnmtthws/conky
20c4391a17552de6865d517bce97b56f2970e832 not-for-merge 'refs/pull/553/merge' of https://github.com/brndnmtthws/conky
358d52d9fddc6b4880a2e5bb6fd9fc8c28c356cf not-for-merge 'refs/pull/554/head' of https://github.com/brndnmtthws/conky
0abe63b1c65226d1d3f2a8987587d7a2ad267ce2 not-for-merge 'refs/pull/556/head' of https://github.com/brndnmtthws/conky
2e8bb608a34ba6131273976b4a8d951a73336301 not-for-merge 'refs/pull/556/merge' of https://github.com/brndnmtthws/conky
a2727e63fded042ee6acd9ff0ca4cff5922b19d3 not-for-merge 'refs/pull/558/head' of https://github.com/brndnmtthws/conky
2b3fb682aa007294ac6144777fcebd8935d36a4d not-for-merge 'refs/pull/559/head' of https://github.com/brndnmtthws/conky
2a24fe36db1a4b9dbb9119d2997a4aaa725a5afa not-for-merge 'refs/pull/560/head' of https://github.com/brndnmtthws/conky
1010cca03413198ba24df0a726c578b1cb14a4ab not-for-merge 'refs/pull/563/head' of https://github.com/brndnmtthws/conky
1010cca03413198ba24df0a726c578b1cb14a4ab not-for-merge 'refs/pull/566/head' of https://github.com/brndnmtthws/conky
e902f5361a4920cb6303fdf56219aa3aa601e2ad not-for-merge 'refs/pull/567/head' of https://github.com/brndnmtthws/conky
c409827d8310053b6136a2d8d69f399411bf08c5 not-for-merge 'refs/pull/568/head' of https://github.com/brndnmtthws/conky
3289691396af477244084619dc8c590eebde8307 not-for-merge 'refs/pull/568/merge' of https://github.com/brndnmtthws/conky
f4dfd693cf6d376412027e6a95bc0f6053d2c8ee not-for-merge 'refs/pull/569/head' of https://github.com/brndnmtthws/conky
cdb303ea9b82c3a9ef0a36ff2ec6ad785fe175d4 not-for-merge 'refs/pull/569/merge' of https://github.com/brndnmtthws/conky
2ca8b66e98aa1a8e968991a584ba30d43118ef51 not-for-merge 'refs/pull/570/head' of https://github.com/brndnmtthws/conky
08bce5d800b0992f0f413da895c0f53a7696dfb2 not-for-merge 'refs/pull/571/head' of https://github.com/brndnmtthws/conky
08bce5d800b0992f0f413da895c0f53a7696dfb2 not-for-merge 'refs/pull/573/head' of https://github.com/brndnmtthws/conky
820308613ef3c9aa82a163b2a38e90c28356b6c8 not-for-merge 'refs/pull/574/head' of https://github.com/brndnmtthws/conky
44b82c4ed39e3832293d25899fe93ddb7c8b0278 not-for-merge 'refs/pull/575/head' of https://github.com/brndnmtthws/conky
6ce7769d6a1cebf7358d860b71318e46c92cfa4d not-for-merge 'refs/pull/576/head' of https://github.com/brndnmtthws/conky
807a0606db837ff8179109fdbaa7f6f6f026c36b not-for-merge 'refs/pull/576/merge' of https://github.com/brndnmtthws/conky
d6b137ed0d5b2c91f2ac853ee4c4b4fa6659526d not-for-merge 'refs/pull/577/head' of https://github.com/brndnmtthws/conky
b0d29b610f3bafb619abed56510b6ba537a99313 not-for-merge 'refs/pull/577/merge' of https://github.com/brndnmtthws/conky
39ed1e89f3acb038a2eb6bcab171ece3acd0cc5c not-for-merge 'refs/pull/578/head' of https://github.com/brndnmtthws/conky
b8aeca7815d3f05199929bee8f210ed119261ad2 not-for-merge 'refs/pull/578/merge' of https://github.com/brndnmtthws/conky
d9b218b7e6fcc38f34951e93c6aaac644a890235 not-for-merge 'refs/pull/579/head' of https://github.com/brndnmtthws/conky
a796474be64009d257749ac3e22d97b1be44f72d not-for-merge 'refs/pull/581/head' of https://github.com/brndnmtthws/conky
fe98bd3bae459b530969097b0f610c8a60517335 not-for-merge 'refs/pull/582/head' of https://github.com/brndnmtthws/conky
1da5980b7f1ced65c96431e50e0ef84f1f5d0b72 not-for-merge 'refs/pull/583/head' of https://github.com/brndnmtthws/conky
37db996eb312a779cd1915b780fc16b7e82825ae not-for-merge 'refs/pull/584/head' of https://github.com/brndnmtthws/conky
7455f0f41dc8f04e1a73eaf109b6f26f67fdea90 not-for-merge 'refs/pull/585/head' of https://github.com/brndnmtthws/conky
d4a73251bc00e147bd4f8f6ba63b6220d837c4b8 not-for-merge 'refs/pull/586/head' of https://github.com/brndnmtthws/conky
7129353d2da01fb1d2175d856c210a08cd3d5078 not-for-merge 'refs/pull/587/head' of https://github.com/brndnmtthws/conky
66f62eb3920090e1e4857b9548e269c4fdc0b5f1 not-for-merge 'refs/pull/587/merge' of https://github.com/brndnmtthws/conky
7129353d2da01fb1d2175d856c210a08cd3d5078 not-for-merge 'refs/pull/588/head' of https://github.com/brndnmtthws/conky
3a6bd897083845b429a42473043e3ea8138ff45c not-for-merge 'refs/pull/589/head' of https://github.com/brndnmtthws/conky
3ccda712dd74bc7c7249f5fe64373978fb9ebc32 not-for-merge 'refs/pull/589/merge' of https://github.com/brndnmtthws/conky
4c91c47b7c9b3be377ac3395ffd737facb2041c4 not-for-merge 'refs/pull/590/head' of https://github.com/brndnmtthws/conky
9d0d2af677255e049b55e73491d88646ef7946b1 not-for-merge 'refs/pull/590/merge' of https://github.com/brndnmtthws/conky
16c504a722d158bdf11b4eb4df54126e25156051 not-for-merge 'refs/pull/591/head' of https://github.com/brndnmtthws/conky
db327d12086e5fdae6b4680a70a0d88852b83cd4 not-for-merge 'refs/pull/592/head' of https://github.com/brndnmtthws/conky
66cade3d45196f7434a549a017a9a64c954a6de2 not-for-merge 'refs/pull/594/head' of https://github.com/brndnmtthws/conky
6132c34e5a8ff3c13aaf38e3ea22deeb5afec118 not-for-merge 'refs/pull/595/head' of https://github.com/brndnmtthws/conky
18fdde6aca8a240f1ced8d86bcdbe5808fc56a54 not-for-merge 'refs/pull/597/head' of https://github.com/brndnmtthws/conky
46ebe0417fbeaabcaa33a8f9dfba7f294c006d9e not-for-merge 'refs/pull/597/merge' of https://github.com/brndnmtthws/conky
27bc345624c8e1e2a67c0d6bd656924dbf5dc40b not-for-merge 'refs/pull/598/head' of https://github.com/brndnmtthws/conky
41f068a969fea47234aec96b5366f948945984c8 not-for-merge 'refs/pull/599/head' of https://github.com/brndnmtthws/conky
ad100c7babeca775ea17b449c58c4969b83ee5a4 not-for-merge 'refs/pull/6/head' of https://github.com/brndnmtthws/conky
b0f711a4cc833ccf18c9ccb43f4c131918ab42ea not-for-merge 'refs/pull/6/merge' of https://github.com/brndnmtthws/conky
1c14916bcd664e9c842854c40d17699285d6a98c not-for-merge 'refs/pull/600/head' of https://github.com/brndnmtthws/conky
0e33b53ead10ea75d13cd6cd427cc1f0ec246408 not-for-merge 'refs/pull/603/head' of https://github.com/brndnmtthws/conky
2fb1865a12c9d10f986a4cfa13449eba9b03885e not-for-merge 'refs/pull/604/head' of https://github.com/brndnmtthws/conky
0a741648b73a46342879e122fd6c6d5222ebeca0 not-for-merge 'refs/pull/606/head' of https://github.com/brndnmtthws/conky
859817fac911cec23d98ba97d10b179c0ffcd87d not-for-merge 'refs/pull/606/merge' of https://github.com/brndnmtthws/conky
95c577590b3632480057cab9ff14d4b4c075c1d2 not-for-merge 'refs/pull/607/head' of https://github.com/brndnmtthws/conky
bd0f034b45a95108c5cc2de639b84b4e829d907a not-for-merge 'refs/pull/608/head' of https://github.com/brndnmtthws/conky
5c83b19ba4ee57c33fcec30952f13c46ff556373 not-for-merge 'refs/pull/610/head' of https://github.com/brndnmtthws/conky
5c83b19ba4ee57c33fcec30952f13c46ff556373 not-for-merge 'refs/pull/611/head' of https://github.com/brndnmtthws/conky
aff5ae54afc25ab8aac33a4c983e84d293432fb1 not-for-merge 'refs/pull/611/merge' of https://github.com/brndnmtthws/conky
1d3f8f38a41f39133039a489ec8f340487a042de not-for-merge 'refs/pull/612/head' of https://github.com/brndnmtthws/conky
c99f1240f40b5b5521dba5af43d3e4c7fa233894 not-for-merge 'refs/pull/613/head' of https://github.com/brndnmtthws/conky
c99f1240f40b5b5521dba5af43d3e4c7fa233894 not-for-merge 'refs/pull/614/head' of https://github.com/brndnmtthws/conky
e95b1b0af32efec03caab3550eb05de65c79ee1f not-for-merge 'refs/pull/614/merge' of https://github.com/brndnmtthws/conky
9bac376a84772ef6171c0452c6de5f0f28e6664a not-for-merge 'refs/pull/615/head' of https://github.com/brndnmtthws/conky
9bac376a84772ef6171c0452c6de5f0f28e6664a not-for-merge 'refs/pull/616/head' of https://github.com/brndnmtthws/conky
f4d3c14f959b2bed484ccfb081024a61a8c59b30 not-for-merge 'refs/pull/616/merge' of https://github.com/brndnmtthws/conky
9a9c3e9455ac401cb7311cb82698ed6ac85e3688 not-for-merge 'refs/pull/617/head' of https://github.com/brndnmtthws/conky
d5c7679baa68b90945f43c27b341a6691ae6e348 not-for-merge 'refs/pull/617/merge' of https://github.com/brndnmtthws/conky
f462dd1b8a5bf651f59b9a53aa9f0f1e456c8abd not-for-merge 'refs/pull/618/head' of https://github.com/brndnmtthws/conky
0693d344484ea2abb89f8c179597af2d97f2ae94 not-for-merge 'refs/pull/618/merge' of https://github.com/brndnmtthws/conky
fbfffc0ecadb24d4ee08878d3ed23e3c0e4881c9 not-for-merge 'refs/pull/624/head' of https://github.com/brndnmtthws/conky
b383ee811103f9c446158831b18fa0b580d6abaa not-for-merge 'refs/pull/626/head' of https://github.com/brndnmtthws/conky
8831c09c6ae84079028a4a6ce186cf0404df89e6 not-for-merge 'refs/pull/628/head' of https://github.com/brndnmtthws/conky
8831c09c6ae84079028a4a6ce186cf0404df89e6 not-for-merge 'refs/pull/629/head' of https://github.com/brndnmtthws/conky
e94d81e300ef6fb28e1d8d59e9f960638d9bb740 not-for-merge 'refs/pull/629/merge' of https://github.com/brndnmtthws/conky
c66a5adadd9152ca94a8e7a8ce7db33196e9647f not-for-merge 'refs/pull/63/head' of https://github.com/brndnmtthws/conky
66cc0e854426f76ac24684889aa2fab14d0c0cf6 not-for-merge 'refs/pull/63/merge' of https://github.com/brndnmtthws/conky
adb03c520dd6e5b422384f9f07a60045fe64d0cb not-for-merge 'refs/pull/630/head' of https://github.com/brndnmtthws/conky
dcc798a23010fd3e1a6f606474bcb0fadf9c9e19 not-for-merge 'refs/pull/631/head' of https://github.com/brndnmtthws/conky
dcc798a23010fd3e1a6f606474bcb0fadf9c9e19 not-for-merge 'refs/pull/632/head' of https://github.com/brndnmtthws/conky
633139434e7e40609f04e9adead578062540e63f not-for-merge 'refs/pull/632/merge' of https://github.com/brndnmtthws/conky
1a4007977bea77d835b50763ef2d3de59956025c not-for-merge 'refs/pull/633/head' of https://github.com/brndnmtthws/conky
11afa6da15a485e3f50f3374d9e789c041d46872 not-for-merge 'refs/pull/634/head' of https://github.com/brndnmtthws/conky
1a4007977bea77d835b50763ef2d3de59956025c not-for-merge 'refs/pull/635/head' of https://github.com/brndnmtthws/conky
f9844f07dbc34c41c82aa4a7a7aa281dc054da37 not-for-merge 'refs/pull/635/merge' of https://github.com/brndnmtthws/conky
71f7b31b6f7297605a05b2287f411731d1b7f621 not-for-merge 'refs/pull/637/head' of https://github.com/brndnmtthws/conky
1614a77dab3e117bbe02817403d0895d66a61be9 not-for-merge 'refs/pull/638/head' of https://github.com/brndnmtthws/conky
fe40a7cb8dbb4d4d1953ae92c015b65710d155bf not-for-merge 'refs/pull/638/merge' of https://github.com/brndnmtthws/conky
442f78119cb474988831f44b2d8c6dc26c4862e5 not-for-merge 'refs/pull/64/head' of https://github.com/brndnmtthws/conky
d46ef28460df307a1793207fb92fe69464904c84 not-for-merge 'refs/pull/640/head' of https://github.com/brndnmtthws/conky
13fdbf030eb3997afd3270135bcdd9a1db81a931 not-for-merge 'refs/pull/641/head' of https://github.com/brndnmtthws/conky
2c429f6d0707dc1f675c5a61742101874ae20568 not-for-merge 'refs/pull/642/head' of https://github.com/brndnmtthws/conky
ae2c371c4e4ec06b3fdcf951dee96dbf910288d2 not-for-merge 'refs/pull/643/head' of https://github.com/brndnmtthws/conky
9f20389986374b14a56d48160be6ecc59a732368 not-for-merge 'refs/pull/644/head' of https://github.com/brndnmtthws/conky
a6dd121b12ecd2769255819f9d03cbd7866e48ab not-for-merge 'refs/pull/645/head' of https://github.com/brndnmtthws/conky
0a12d450bcc4dc323c666ad60b78b8814e693a11 not-for-merge 'refs/pull/646/head' of https://github.com/brndnmtthws/conky
0a12d450bcc4dc323c666ad60b78b8814e693a11 not-for-merge 'refs/pull/647/head' of https://github.com/brndnmtthws/conky
040c55e7510607907dee0622a5c5aceaddd955dd not-for-merge 'refs/pull/647/merge' of https://github.com/brndnmtthws/conky
446ff60b040ae1c00c58e1a77eb27c487dfaf0f1 not-for-merge 'refs/pull/648/head' of https://github.com/brndnmtthws/conky
446ff60b040ae1c00c58e1a77eb27c487dfaf0f1 not-for-merge 'refs/pull/649/head' of https://github.com/brndnmtthws/conky
13bc81f484199d90644d4f29c7ac172803169bbc not-for-merge 'refs/pull/649/merge' of https://github.com/brndnmtthws/conky
0d63d62f4537e67119cbd057d9264cb760452079 not-for-merge 'refs/pull/651/head' of https://github.com/brndnmtthws/conky
2ecf68fbc55bd696faea6bcec897000f4f9c9471 not-for-merge 'refs/pull/659/head' of https://github.com/brndnmtthws/conky
866c5d640b084edf773704fbdc4b81c62d7c084e not-for-merge 'refs/pull/659/merge' of https://github.com/brndnmtthws/conky
672137a316d9f60b66ea720c2c3d3f0cd0d48fb4 not-for-merge 'refs/pull/660/head' of https://github.com/brndnmtthws/conky
fdd478ec688e9dd6b5f7a6a11c9766a15ce8e6e4 not-for-merge 'refs/pull/664/head' of https://github.com/brndnmtthws/conky
34dcd8048b892ccd4652132d0cb8389caf4f2904 not-for-merge 'refs/pull/667/head' of https://github.com/brndnmtthws/conky
34dcd8048b892ccd4652132d0cb8389caf4f2904 not-for-merge 'refs/pull/668/head' of https://github.com/brndnmtthws/conky
6070edb7997b67e7ac364595070b505fbf576ff4 not-for-merge 'refs/pull/668/merge' of https://github.com/brndnmtthws/conky
0fe300d35d539cdda1125f7b093a91b4a4e6f5d9 not-for-merge 'refs/pull/671/head' of https://github.com/brndnmtthws/conky
5b6bc1b00a307a10c92b33eb35edf3d05b0e4bf2 not-for-merge 'refs/pull/672/head' of https://github.com/brndnmtthws/conky
84e8835b621ca1d44b0871a6d2336a5b3e5e9a9a not-for-merge 'refs/pull/678/head' of https://github.com/brndnmtthws/conky
29a6cf1f608ea9c19142652a752a621e7be0dbfe not-for-merge 'refs/pull/679/head' of https://github.com/brndnmtthws/conky
a4b84c9e566fbb8c2220bfe541d4556e4c3970f3 not-for-merge 'refs/pull/680/head' of https://github.com/brndnmtthws/conky
651d0c06bcb81d94176c5b730331d9ab3b68784c not-for-merge 'refs/pull/681/head' of https://github.com/brndnmtthws/conky
ef84097e41e44a1fe645a8e39b40d44f589e0c1f not-for-merge 'refs/pull/682/head' of https://github.com/brndnmtthws/conky
7aad69ff826719bb14a0c72629fb001fa0774a75 not-for-merge 'refs/pull/683/head' of https://github.com/brndnmtthws/conky
6afdc8cbb57495473838e75dbf9ffb4eb72b0d7c not-for-merge 'refs/pull/686/head' of https://github.com/brndnmtthws/conky
45a7f90e8f45169efdce14a5de0018e57b63b388 not-for-merge 'refs/pull/687/head' of https://github.com/brndnmtthws/conky
6bfd28dcc2d088356d2e0598c1d524a0652c6c00 not-for-merge 'refs/pull/688/head' of https://github.com/brndnmtthws/conky
d92cb4d2133a38cc0ae3c78f13f002fc124f9374 not-for-merge 'refs/pull/689/head' of https://github.com/brndnmtthws/conky
9c2389232adbda39c004a9cc07ab72dda0cf4338 not-for-merge 'refs/pull/692/head' of https://github.com/brndnmtthws/conky
1d9ff00b31e2f7985111446d435ed43201a5c630 not-for-merge 'refs/pull/693/head' of https://github.com/brndnmtthws/conky
1d0de0bb869ae5377652d0f59d2954f71866ee8e not-for-merge 'refs/pull/694/head' of https://github.com/brndnmtthws/conky
9bb346ba9304a433a0414030f978f4f9fcc7f554 not-for-merge 'refs/pull/697/head' of https://github.com/brndnmtthws/conky
645ed23be6d802afd7e51504871f0936e86afdd2 not-for-merge 'refs/pull/698/head' of https://github.com/brndnmtthws/conky
749083a4501262c19cb4ce8d8fe08e4a8b8b09b9 not-for-merge 'refs/pull/7/head' of https://github.com/brndnmtthws/conky
cee1531f884b3ea3ada1af8304a2ead1e38f3b89 not-for-merge 'refs/pull/7/merge' of https://github.com/brndnmtthws/conky
c61c2404addc1a9e81a3a99798a92c3b214c60aa not-for-merge 'refs/pull/701/head' of https://github.com/brndnmtthws/conky
96d037ef98a85e6cd5b7cefb6278143fa3ecf998 not-for-merge 'refs/pull/704/head' of https://github.com/brndnmtthws/conky
dbd644d7f5ca46eef2279aeea3e65aab217f503d not-for-merge 'refs/pull/707/head' of https://github.com/brndnmtthws/conky
b9dba46fb3b048d254146ac75e90d999e3433f99 not-for-merge 'refs/pull/71/head' of https://github.com/brndnmtthws/conky
9298004d869126f3923653045859e0632d3569ce not-for-merge 'refs/pull/710/head' of https://github.com/brndnmtthws/conky
02ee62acadd74973da9834cb67d1e1ab6f502ccc not-for-merge 'refs/pull/711/head' of https://github.com/brndnmtthws/conky
c5b113743ed371c1fb85af18e1a1512c3815e623 not-for-merge 'refs/pull/712/head' of https://github.com/brndnmtthws/conky
8197a67f87f7463d41ce1d08cb403822e2888659 not-for-merge 'refs/pull/713/head' of https://github.com/brndnmtthws/conky
4ef597da924df0f10166b7eb6b23ee592addc7af not-for-merge 'refs/pull/714/head' of https://github.com/brndnmtthws/conky
2227652011fa5efbf6288b6e91cba4bc76b9ab77 not-for-merge 'refs/pull/716/head' of https://github.com/brndnmtthws/conky
ec63e458415043fe5e63fa6ef9de26456c910544 not-for-merge 'refs/pull/719/head' of https://github.com/brndnmtthws/conky
00481ee9a97025e8e2acd7303d080af1948f7980 not-for-merge 'refs/pull/72/head' of https://github.com/brndnmtthws/conky
a09967601b7c365d499172812af95c054ee7f658 not-for-merge 'refs/pull/720/head' of https://github.com/brndnmtthws/conky
0b86fd00c75059c197feaa60fdb95cdef2220f73 not-for-merge 'refs/pull/721/head' of https://github.com/brndnmtthws/conky
98855f8468fdeeab9aca3f7f7cc038466eab0a0f not-for-merge 'refs/pull/722/head' of https://github.com/brndnmtthws/conky
7d5f4f4c47c7e03233dbbccf77376d8049bab501 not-for-merge 'refs/pull/723/head' of https://github.com/brndnmtthws/conky
3b95d1357dc7c17594208d7d1c68fbf3d02799bb not-for-merge 'refs/pull/726/head' of https://github.com/brndnmtthws/conky
55ca1be8bb69481e3677ef109f8dd32eee20c684 not-for-merge 'refs/pull/727/head' of https://github.com/brndnmtthws/conky
6dee7b214f9fd640476436d9b23a75eaf6119426 not-for-merge 'refs/pull/728/head' of https://github.com/brndnmtthws/conky
d603180b0e243b6363d370734f78d4ae82decbae not-for-merge 'refs/pull/731/head' of https://github.com/brndnmtthws/conky
8e1641868102f7219f9c6368217dcca2f3b86e86 not-for-merge 'refs/pull/733/head' of https://github.com/brndnmtthws/conky
73e83b40d6d289c25eef12667bfdcf1417fe65cf not-for-merge 'refs/pull/734/head' of https://github.com/brndnmtthws/conky
51c48ab02702f649e271b7ed857af0fcae7003ad not-for-merge 'refs/pull/735/head' of https://github.com/brndnmtthws/conky
6e07b5f22ba81237e719571f9836a227f1505389 not-for-merge 'refs/pull/736/head' of https://github.com/brndnmtthws/conky
e359285e4f6882b4d1d7972270ab7eea99dcf921 not-for-merge 'refs/pull/739/head' of https://github.com/brndnmtthws/conky
59dd72b525caa7e0ac7b224b136e8167f8d48bb0 not-for-merge 'refs/pull/740/head' of https://github.com/brndnmtthws/conky
cd1e4219dd8384127b0a5bec2a60700b8e9125fe not-for-merge 'refs/pull/741/head' of https://github.com/brndnmtthws/conky
7ec6dde591d3245fb9a85cee3081ff5f2752e58e not-for-merge 'refs/pull/742/head' of https://github.com/brndnmtthws/conky
645cd33effde8b038432accec60b24ae9405c6d6 not-for-merge 'refs/pull/743/head' of https://github.com/brndnmtthws/conky
6cbd000fe5690d9bcbdd0dad2525be3a8c671e0f not-for-merge 'refs/pull/745/head' of https://github.com/brndnmtthws/conky
6350f2d69f40570fdbcc75482b8723e4b7138e34 not-for-merge 'refs/pull/746/head' of https://github.com/brndnmtthws/conky
5b205fbcbaaf842d8da1929ea029bbb946a7f260 not-for-merge 'refs/pull/750/head' of https://github.com/brndnmtthws/conky
f65de108ac86fb8e3f1342803e3e092ee81094bf not-for-merge 'refs/pull/751/head' of https://github.com/brndnmtthws/conky
09dd971a36619bacdaff918e53c85dee0a20dc0f not-for-merge 'refs/pull/752/head' of https://github.com/brndnmtthws/conky
7f5bb4e5f06ab94d6be5d861de0532e4dddcc8b0 not-for-merge 'refs/pull/755/head' of https://github.com/brndnmtthws/conky
b0c269aa9ee99dd5e2cb896f6563576d265201da not-for-merge 'refs/pull/758/head' of https://github.com/brndnmtthws/conky
38beb1875f46714f72308d5811b4fc1e8d294f67 not-for-merge 'refs/pull/760/head' of https://github.com/brndnmtthws/conky
1ea41d5e920f1d3c983f73b97c9b9520faf7b247 not-for-merge 'refs/pull/761/head' of https://github.com/brndnmtthws/conky
5a37575ec8150dd95524daaac3871c76657101dc not-for-merge 'refs/pull/770/head' of https://github.com/brndnmtthws/conky
02c29a3f8c05c555e398a3917a15bfcf9b469f4f not-for-merge 'refs/pull/771/head' of https://github.com/brndnmtthws/conky
2d14e2fd57fd133535bc0103d0ba46ffdbb27e23 not-for-merge 'refs/pull/772/head' of https://github.com/brndnmtthws/conky
f6b43b703c58646ccde5f13d6ac29ca437be5883 not-for-merge 'refs/pull/777/head' of https://github.com/brndnmtthws/conky
b3e18fe70e1c7fc2ef08299f82834af334fcf18b not-for-merge 'refs/pull/782/head' of https://github.com/brndnmtthws/conky
b3e18fe70e1c7fc2ef08299f82834af334fcf18b not-for-merge 'refs/pull/783/head' of https://github.com/brndnmtthws/conky
4170f22c834489a3c1b20aa163e5f14092ce20c9 not-for-merge 'refs/pull/784/head' of https://github.com/brndnmtthws/conky
23226103ed65aad5649020a2ef989881b3d5c5e5 not-for-merge 'refs/pull/785/head' of https://github.com/brndnmtthws/conky
c5841f1999efb5f3aaad95c22184d1d24fc3276c not-for-merge 'refs/pull/786/head' of https://github.com/brndnmtthws/conky
e0606cf195e0387240689b3769858b3b0e62668e not-for-merge 'refs/pull/787/head' of https://github.com/brndnmtthws/conky
8df3546b0bd89dce16f82f37437a149638efde3d not-for-merge 'refs/pull/788/head' of https://github.com/brndnmtthws/conky
89a48db65c8b822a7d1e960ef667258ac88f1acd not-for-merge 'refs/pull/789/head' of https://github.com/brndnmtthws/conky
21c0473b4520fd0c71ebdeeb48a2c3071ce02f3a not-for-merge 'refs/pull/790/head' of https://github.com/brndnmtthws/conky
0a1db79cc0e0a55aa94492dcf60db4a7b33f2a36 not-for-merge 'refs/pull/791/head' of https://github.com/brndnmtthws/conky
d02f2bb869741c93ab1433521ba9a03f5ae878e7 not-for-merge 'refs/pull/792/head' of https://github.com/brndnmtthws/conky
8d5be0a4ba2e6baf252a15d1e796ed9e5bb708fb not-for-merge 'refs/pull/793/head' of https://github.com/brndnmtthws/conky
be6b359888aeb0631baa7656dd306d49bf595545 not-for-merge 'refs/pull/795/head' of https://github.com/brndnmtthws/conky
b289f1c8ccad8dd79e53cb8a65d54fbc21810ec3 not-for-merge 'refs/pull/796/head' of https://github.com/brndnmtthws/conky
3019c0e88cf874cdd903ce06795eb30ae0f9d705 not-for-merge 'refs/pull/797/head' of https://github.com/brndnmtthws/conky
ea8adc3d5722471ebbc811999333bbcafcf490e1 not-for-merge 'refs/pull/798/head' of https://github.com/brndnmtthws/conky
c091f9679502f5a7f6d90f255acb29a569b0c4a2 not-for-merge 'refs/pull/799/head' of https://github.com/brndnmtthws/conky
99bbea04341fb046f33933fd81aee5f99a7d2b08 not-for-merge 'refs/pull/800/head' of https://github.com/brndnmtthws/conky
bb1fec36445b2d96ca32ac11efe07a917b3f5e5a not-for-merge 'refs/pull/801/head' of https://github.com/brndnmtthws/conky
8f06bed3f4e175eb83e2abfe51d9781ce4581afb not-for-merge 'refs/pull/803/head' of https://github.com/brndnmtthws/conky
a5e2125ae0c61e910a8c3f5c2ab7cdcb97384589 not-for-merge 'refs/pull/804/head' of https://github.com/brndnmtthws/conky
bc5f0454defad035c5c24c85fff4ca26d04a5757 not-for-merge 'refs/pull/805/head' of https://github.com/brndnmtthws/conky
4faab76ca6e8f5166e947a0c461ee7e3ed8c5f83 not-for-merge 'refs/pull/806/head' of https://github.com/brndnmtthws/conky
122eac9fc43eaac8c3a9a69a57265122f6cb6408 not-for-merge 'refs/pull/808/head' of https://github.com/brndnmtthws/conky
e277a2f60e0ebe796f19c26007c8699af88b4de6 not-for-merge 'refs/pull/809/head' of https://github.com/brndnmtthws/conky
34903b493f40b77f46eecc839b256c791d3f6076 not-for-merge 'refs/pull/81/head' of https://github.com/brndnmtthws/conky
d35d9d6d378dda6b42a99b32407e6d9fb90d6041 not-for-merge 'refs/pull/810/head' of https://github.com/brndnmtthws/conky
ae528ee7aaff065f6e20a6a2b5aaacf73bd68488 not-for-merge 'refs/pull/811/head' of https://github.com/brndnmtthws/conky
ae528ee7aaff065f6e20a6a2b5aaacf73bd68488 not-for-merge 'refs/pull/812/head' of https://github.com/brndnmtthws/conky
2383fb0eb192e44b222c2a5fdca87cc3fbeaca90 not-for-merge 'refs/pull/813/head' of https://github.com/brndnmtthws/conky
b55772a129a13cc1df65954c2b3cd96278bcd858 not-for-merge 'refs/pull/814/head' of https://github.com/brndnmtthws/conky
b98e7a834812443b0f43338eace14ee456b7cbf0 not-for-merge 'refs/pull/819/head' of https://github.com/brndnmtthws/conky
237fe4864b4775564c113122219ad38d29a644bf not-for-merge 'refs/pull/82/head' of https://github.com/brndnmtthws/conky
0b4a40e06cc6764c7f45260981dd16d722f0c789 not-for-merge 'refs/pull/824/head' of https://github.com/brndnmtthws/conky
ed462daa1177ab97e64bd962294b242ffd5445aa not-for-merge 'refs/pull/825/head' of https://github.com/brndnmtthws/conky
1c0774b2600d112ce8246c5482e0713cbad2db1a not-for-merge 'refs/pull/826/head' of https://github.com/brndnmtthws/conky
a676319e5a9c525d7aa8a0fe9ae25eef96f65ea2 not-for-merge 'refs/pull/827/head' of https://github.com/brndnmtthws/conky
9fd4090a07d66fae2452ddf120c51bc62e91188b not-for-merge 'refs/pull/83/head' of https://github.com/brndnmtthws/conky
376b316e254f266af5546265be1de7610191219e not-for-merge 'refs/pull/831/head' of https://github.com/brndnmtthws/conky
6c38a4fa8c4f6f7fc50701b049808bdb9adddb7b not-for-merge 'refs/pull/834/head' of https://github.com/brndnmtthws/conky
7978b06a54f66499324d4ee3c009c1a1a29fbfa1 not-for-merge 'refs/pull/835/head' of https://github.com/brndnmtthws/conky
3677bc23f796363bae84869c369f825a9148924e not-for-merge 'refs/pull/838/head' of https://github.com/brndnmtthws/conky
201b7ec0468cfa96ae87484306b3179778ae11c5 not-for-merge 'refs/pull/84/head' of https://github.com/brndnmtthws/conky
bbc97390fea52fdc2f4555b8be2a33b2800fe4e2 not-for-merge 'refs/pull/84/merge' of https://github.com/brndnmtthws/conky
cfdca22583f3d07854959c3e46032b3024bcd16c not-for-merge 'refs/pull/840/head' of https://github.com/brndnmtthws/conky
8a539d7a64dd9a51b3ecbf2d9b5f649ca3083251 not-for-merge 'refs/pull/842/head' of https://github.com/brndnmtthws/conky
8c1321635f95f7864a58d7eaf5ab06b2ae73cd3d not-for-merge 'refs/pull/846/head' of https://github.com/brndnmtthws/conky
abc7e57c45033239e6bf115e1fb02e48c9c0c803 not-for-merge 'refs/pull/849/head' of https://github.com/brndnmtthws/conky
5373dfceaab57db932cfcda36e86595434727dec not-for-merge 'refs/pull/852/head' of https://github.com/brndnmtthws/conky
3681077a9b546fbe5bde257a6197f927cfe22320 not-for-merge 'refs/pull/858/head' of https://github.com/brndnmtthws/conky
df240f950d5ec7ec84e34d1c2ac2674c9f138503 not-for-merge 'refs/pull/859/head' of https://github.com/brndnmtthws/conky
b658e11c9f42fa3403d172163493d8c6602aa8d8 not-for-merge 'refs/pull/864/head' of https://github.com/brndnmtthws/conky
a4e59793dd1001e2736550ed7fbff1778d48e6d4 not-for-merge 'refs/pull/865/head' of https://github.com/brndnmtthws/conky
94c0b0ad3864f4b4be3d7381d2e13814b212d55b not-for-merge 'refs/pull/866/head' of https://github.com/brndnmtthws/conky
a43933353e5088d52f19985bac4b43b168c08190 not-for-merge 'refs/pull/871/head' of https://github.com/brndnmtthws/conky
6e7b457f1d162097397a6e1a1d26d175c4d3357f not-for-merge 'refs/pull/873/head' of https://github.com/brndnmtthws/conky
d405b217cf5edc795a92101d161defa46614ab86 not-for-merge 'refs/pull/878/head' of https://github.com/brndnmtthws/conky
25a637b7a851fa1e3993e4a658e47aac92c91da1 not-for-merge 'refs/pull/889/head' of https://github.com/brndnmtthws/conky
7f8021c6a0cce442161d68bbc087307ae544476a not-for-merge 'refs/pull/892/head' of https://github.com/brndnmtthws/conky
037317d134f7771bf8d43fe80f78b13dcb8678d5 not-for-merge 'refs/pull/895/head' of https://github.com/brndnmtthws/conky
ff89c6ae1ffa9817dbb6994363f24cd391b8a1fc not-for-merge 'refs/pull/907/head' of https://github.com/brndnmtthws/conky
7feb6ad39c5dbecaa9b0802fa31ad1f31e7b3bc7 not-for-merge 'refs/pull/911/head' of https://github.com/brndnmtthws/conky
faef8a4bf4b32795bbeb6d7053151c298c7e0003 not-for-merge 'refs/pull/924/head' of https://github.com/brndnmtthws/conky
a2b06428cdd80fb3efcc0d7cd0b2eaf0709044fc not-for-merge 'refs/pull/925/head' of https://github.com/brndnmtthws/conky
e7dd9a5f77ea45a1f7afb3d7ef709dfea370ca23 not-for-merge 'refs/pull/927/head' of https://github.com/brndnmtthws/conky
57b59a49bfed4d6cd5ce3292128acb9633ed5002 not-for-merge 'refs/pull/929/head' of https://github.com/brndnmtthws/conky
20d79b945d4d15d8d9055c7fe066d2d5a9a249ab not-for-merge 'refs/pull/932/head' of https://github.com/brndnmtthws/conky
f3f3d60f93b49433e1064b82a2b8ff6768376dbd not-for-merge 'refs/pull/949/head' of https://github.com/brndnmtthws/conky
7599a760157032518f14bf1386e213f95b454ea3 not-for-merge 'refs/pull/955/head' of https://github.com/brndnmtthws/conky
b8082ca1fa98efb647e509cd3581c9d6e561029b not-for-merge 'refs/pull/96/head' of https://github.com/brndnmtthws/conky
653a4d4259f93dc6183f037b509466010f6e2f05 not-for-merge 'refs/pull/964/head' of https://github.com/brndnmtthws/conky
45ec28ca00adb6932714ca2a1317a08748cf2b0f not-for-merge 'refs/pull/973/head' of https://github.com/brndnmtthws/conky
e752bbd0a6e79a14549c557613640dc21e55972e not-for-merge remote-tracking branch 'su8/su8-fixes-191' of https://github.com/brndnmtthws/conky
8e29357bbc7a8915b62aa7b1b88d899a70ac310f not-for-merge tag '1.11.0' of https://github.com/brndnmtthws/conky
7dbb26be48a343cc62ad2e1ada29e834ecc22d02 not-for-merge tag '1.6.2_pre1347' of https://github.com/brndnmtthws/conky
51a185f0c33c72e20d965d8483e1e3fddc813caf not-for-merge tag '1.6.2_pre1355' of https://github.com/brndnmtthws/conky
4413958973c0c64522b0b29621ae9b683ff34411 not-for-merge tag '1.6.2_pre1380' of https://github.com/brndnmtthws/conky
0c7f5f5eadb499626da1eea9ce6a2da10877f319 not-for-merge tag '1.7.0' of https://github.com/brndnmtthws/conky
da91f3ec1ba43d47ae8f808718ad198a189be56a not-for-merge tag '1.7.0_rc1' of https://github.com/brndnmtthws/conky
a507421f157758f99ed101b1efe97e5bb44c8fb2 not-for-merge tag '1.7.0_rc2' of https://github.com/brndnmtthws/conky
9a296709927394f62cf51b191ac2a957876b3a73 not-for-merge tag '1.7.1' of https://github.com/brndnmtthws/conky
be2c16ff725399fe1cbf794770b82e709d9fe16f not-for-merge tag '1.7.1.1' of https://github.com/brndnmtthws/conky
e80b3a6cf337ca7c8c71ef3d0d33dd9508adbe92 not-for-merge tag '1.7.1_pre1466' of https://github.com/brndnmtthws/conky
a9fcc3c5f9988ce6e171909277aa3a24dc8f7758 not-for-merge tag '1.7.1_rc1' of https://github.com/brndnmtthws/conky
c48a43f4777e61a77979fb947a1f4612f4c4a9a6 not-for-merge tag '1.7.1_rc2' of https://github.com/brndnmtthws/conky
0ceee2e8f214edd04d3c6671417183b0fa0c3342 not-for-merge tag '1.7.1_rc3' of https://github.com/brndnmtthws/conky
e0d13328f6a857501b4e00e18c56da86b0e66591 not-for-merge tag '1.7.1_rc4' of https://github.com/brndnmtthws/conky
2a6855cb446963a01cac7dbbf14ebc83cf0114e8 not-for-merge tag '1.7.2' of https://github.com/brndnmtthws/conky
f07c69deb49d9644da0288702db6527c845d55f0 not-for-merge tag '1.7.2_pre1678' of https://github.com/brndnmtthws/conky
ff4b748c58e8224d135b8244505bd73bc24012ca not-for-merge tag '1.7.2_pre1823' of https://github.com/brndnmtthws/conky
d3621f6d773931a8120bd0aebf1c2ffed1f468ad not-for-merge tag '1.7.2_rc1' of https://github.com/brndnmtthws/conky
a718fd1a30b41e08e2a713ba1e958cfaa84640d1 not-for-merge tag '1.7.2_rc2' of https://github.com/brndnmtthws/conky
30e6449f278cc6b3f8e942bd25b02a5ab74729c1 not-for-merge tag '1.7.2_rc3' of https://github.com/brndnmtthws/conky
d2ced311a769a6a19d3378d7be9f37239f311d91 not-for-merge tag '1.8.0' of https://github.com/brndnmtthws/conky
2a18130507912e26063fe266ea4cb9bc15be94d9 not-for-merge tag '1.8.0_rc1' of https://github.com/brndnmtthws/conky
af986734b498f330a269ebd37b908bddc391656d not-for-merge tag '1.8.0_rc2' of https://github.com/brndnmtthws/conky
547ed3767879a0f2d108fbdce0425c2e64452e32 not-for-merge tag '1.8.1' of https://github.com/brndnmtthws/conky
d6b821c0d467cf52124ff7c8253edec34962378d not-for-merge tag '1.9.0' of https://github.com/brndnmtthws/conky
9a15e527cad5a5dfe87f597088f377f3bc32a051 not-for-merge tag '1.999' of https://github.com/brndnmtthws/conky
8a4eb2655dcb5c0ccd8d154553a6568ef5e1b435 not-for-merge tag 'v1.10.0' of https://github.com/brndnmtthws/conky
138c86449d1f540105b46a3fa0d206edc1b33bb4 not-for-merge tag 'v1.10.0-rc1' of https://github.com/brndnmtthws/conky
15662beb39de2a369588e0938f7c8c0353058a28 not-for-merge tag 'v1.10.1' of https://github.com/brndnmtthws/conky
c0c60b16753978becf137d537465f31de7651909 not-for-merge tag 'v1.10.2' of https://github.com/brndnmtthws/conky
f2a614b91426bdb58d8a2608fa0f77df77f24ee9 not-for-merge tag 'v1.10.3' of https://github.com/brndnmtthws/conky
1585b7959b9b40313e036e94c04e657076c7653e not-for-merge tag 'v1.10.4' of https://github.com/brndnmtthws/conky
4f367470fe2a5f87586f2f96fd681f35958855d6 not-for-merge tag 'v1.10.5' of https://github.com/brndnmtthws/conky
b5dd94047858a8d3e348d058cff266e055aae528 not-for-merge tag 'v1.10.6' of https://github.com/brndnmtthws/conky
fcae93e9a6e232ac6fed63c36d0e5fd34bf3adff not-for-merge tag 'v1.10.7' of https://github.com/brndnmtthws/conky
79e581c7b30a4f621d058ece89ea73957f9a512a not-for-merge tag 'v1.10.8' of https://github.com/brndnmtthws/conky
fcc1d05d9f064af3f60881d48c07bddb73beeda4 not-for-merge tag 'v1.11.0' of https://github.com/brndnmtthws/conky
bf6b3036461a3ffea15e795b82dcfbc044064d2d not-for-merge tag 'v1.11.1' of https://github.com/brndnmtthws/conky
cd3cdeaf028a09cb7021566103a0c51fe30f8106 not-for-merge tag 'v1.11.2' of https://github.com/brndnmtthws/conky
0d611b42733161659498f76e1b01d07b8eb4aebb not-for-merge tag 'v1.11.3' of https://github.com/brndnmtthws/conky
5136e21a0684f7b7381cf2299012a5ac037123da not-for-merge tag 'v1.11.4' of https://github.com/brndnmtthws/conky
dc4aa8feaa6736ac966f6a0e0ad165d32d298e61 not-for-merge tag 'v1.11.5' of https://github.com/brndnmtthws/conky
ccaf4e61262905be06491b167f50a4ba425e3670 not-for-merge tag 'v1.11.6' of https://github.com/brndnmtthws/conky
32934d42a6a2f3f3f4f441088eea79765eff65cf not-for-merge tag 'v1.12.0' of https://github.com/brndnmtthws/conky
994b057a38638a2344f13866e40d24c2e800b762 not-for-merge tag 'v1.12.1' of https://github.com/brndnmtthws/conky
52e5aa53b4c76973519a770949dc8bdca0145325 not-for-merge tag 'v1.12.2' of https://github.com/brndnmtthws/conky
0f216e8f0247fc0a08cf496b23581867ff51580d not-for-merge tag 'v1.13.1' of https://github.com/brndnmtthws/conky
0fe9a15572c094c232554a73356ef089039f4bb2 not-for-merge tag 'v1.14.0' of https://github.com/brndnmtthws/conky
b85748b6cea0ac0f0e165201ed5b05e60e368fb9 not-for-merge tag 'v1.15.0' of https://github.com/brndnmtthws/conky
ae9dd8124e62c9942c7eddd55f5a1e3864bfcb94 not-for-merge tag 'v1.16.0' of https://github.com/brndnmtthws/conky
061eda9be36d38b49fc8608f5389c7de0223e950 not-for-merge tag 'v1.16.1' of https://github.com/brndnmtthws/conky
8640405583f1f01831c4fae01b7c871f1a7f03b8 not-for-merge tag 'v1.17.0' of https://github.com/brndnmtthws/conky

1
conky/conky/HEAD Normal file
View File

@ -0,0 +1 @@
ref: refs/heads/main

8
conky/conky/config Normal file
View File

@ -0,0 +1,8 @@
[core]
repositoryformatversion = 0
filemode = true
bare = true
[remote "origin"]
url = https://github.com/brndnmtthws/conky.git
fetch = +refs/*:refs/*
mirror = true

1
conky/conky/description Normal file
View File

@ -0,0 +1 @@
Unnamed repository; edit this file 'description' to name the repository.

View File

@ -0,0 +1,15 @@
#!/bin/sh
#
# An example hook script to check the commit log message taken by
# applypatch from an e-mail message.
#
# The hook should exit with non-zero status after issuing an
# appropriate message if it wants to stop the commit. The hook is
# allowed to edit the commit message file.
#
# To enable this hook, rename this file to "applypatch-msg".
. git-sh-setup
commitmsg="$(git rev-parse --git-path hooks/commit-msg)"
test -x "$commitmsg" && exec "$commitmsg" ${1+"$@"}
:

View File

@ -0,0 +1,24 @@
#!/bin/sh
#
# An example hook script to check the commit log message.
# Called by "git commit" with one argument, the name of the file
# that has the commit message. The hook should exit with non-zero
# status after issuing an appropriate message if it wants to stop the
# commit. The hook is allowed to edit the commit message file.
#
# To enable this hook, rename this file to "commit-msg".
# Uncomment the below to add a Signed-off-by line to the message.
# Doing this in a hook is a bad idea in general, but the prepare-commit-msg
# hook is more suited to it.
#
# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')
# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1"
# This example catches duplicate Signed-off-by lines.
test "" = "$(grep '^Signed-off-by: ' "$1" |
sort | uniq -c | sed -e '/^[ ]*1[ ]/d')" || {
echo >&2 Duplicate Signed-off-by lines.
exit 1
}

View File

@ -0,0 +1,174 @@
#!/usr/bin/perl
use strict;
use warnings;
use IPC::Open2;
# An example hook script to integrate Watchman
# (https://facebook.github.io/watchman/) with git to speed up detecting
# new and modified files.
#
# The hook is passed a version (currently 2) and last update token
# formatted as a string and outputs to stdout a new update token and
# all files that have been modified since the update token. Paths must
# be relative to the root of the working tree and separated by a single NUL.
#
# To enable this hook, rename this file to "query-watchman" and set
# 'git config core.fsmonitor .git/hooks/query-watchman'
#
my ($version, $last_update_token) = @ARGV;
# Uncomment for debugging
# print STDERR "$0 $version $last_update_token\n";
# Check the hook interface version
if ($version ne 2) {
die "Unsupported query-fsmonitor hook version '$version'.\n" .
"Falling back to scanning...\n";
}
my $git_work_tree = get_working_dir();
my $retry = 1;
my $json_pkg;
eval {
require JSON::XS;
$json_pkg = "JSON::XS";
1;
} or do {
require JSON::PP;
$json_pkg = "JSON::PP";
};
launch_watchman();
sub launch_watchman {
my $o = watchman_query();
if (is_work_tree_watched($o)) {
output_result($o->{clock}, @{$o->{files}});
}
}
sub output_result {
my ($clockid, @files) = @_;
# Uncomment for debugging watchman output
# open (my $fh, ">", ".git/watchman-output.out");
# binmode $fh, ":utf8";
# print $fh "$clockid\n@files\n";
# close $fh;
binmode STDOUT, ":utf8";
print $clockid;
print "\0";
local $, = "\0";
print @files;
}
sub watchman_clock {
my $response = qx/watchman clock "$git_work_tree"/;
die "Failed to get clock id on '$git_work_tree'.\n" .
"Falling back to scanning...\n" if $? != 0;
return $json_pkg->new->utf8->decode($response);
}
sub watchman_query {
my $pid = open2(\*CHLD_OUT, \*CHLD_IN, 'watchman -j --no-pretty')
or die "open2() failed: $!\n" .
"Falling back to scanning...\n";
# In the query expression below we're asking for names of files that
# changed since $last_update_token but not from the .git folder.
#
# To accomplish this, we're using the "since" generator to use the
# recency index to select candidate nodes and "fields" to limit the
# output to file names only. Then we're using the "expression" term to
# further constrain the results.
my $last_update_line = "";
if (substr($last_update_token, 0, 1) eq "c") {
$last_update_token = "\"$last_update_token\"";
$last_update_line = qq[\n"since": $last_update_token,];
}
my $query = <<" END";
["query", "$git_work_tree", {$last_update_line
"fields": ["name"],
"expression": ["not", ["dirname", ".git"]]
}]
END
# Uncomment for debugging the watchman query
# open (my $fh, ">", ".git/watchman-query.json");
# print $fh $query;
# close $fh;
print CHLD_IN $query;
close CHLD_IN;
my $response = do {local $/; <CHLD_OUT>};
# Uncomment for debugging the watch response
# open ($fh, ">", ".git/watchman-response.json");
# print $fh $response;
# close $fh;
die "Watchman: command returned no output.\n" .
"Falling back to scanning...\n" if $response eq "";
die "Watchman: command returned invalid output: $response\n" .
"Falling back to scanning...\n" unless $response =~ /^\{/;
return $json_pkg->new->utf8->decode($response);
}
sub is_work_tree_watched {
my ($output) = @_;
my $error = $output->{error};
if ($retry > 0 and $error and $error =~ m/unable to resolve root .* directory (.*) is not watched/) {
$retry--;
my $response = qx/watchman watch "$git_work_tree"/;
die "Failed to make watchman watch '$git_work_tree'.\n" .
"Falling back to scanning...\n" if $? != 0;
$output = $json_pkg->new->utf8->decode($response);
$error = $output->{error};
die "Watchman: $error.\n" .
"Falling back to scanning...\n" if $error;
# Uncomment for debugging watchman output
# open (my $fh, ">", ".git/watchman-output.out");
# close $fh;
# Watchman will always return all files on the first query so
# return the fast "everything is dirty" flag to git and do the
# Watchman query just to get it over with now so we won't pay
# the cost in git to look up each individual file.
my $o = watchman_clock();
$error = $output->{error};
die "Watchman: $error.\n" .
"Falling back to scanning...\n" if $error;
output_result($o->{clock}, ("/"));
$last_update_token = $o->{clock};
eval { launch_watchman() };
return 0;
}
die "Watchman: $error.\n" .
"Falling back to scanning...\n" if $error;
return 1;
}
sub get_working_dir {
my $working_dir;
if ($^O =~ 'msys' || $^O =~ 'cygwin') {
$working_dir = Win32::GetCwd();
$working_dir =~ tr/\\/\//;
} else {
require Cwd;
$working_dir = Cwd::cwd();
}
return $working_dir;
}

View File

@ -0,0 +1,8 @@
#!/bin/sh
#
# An example hook script to prepare a packed repository for use over
# dumb transports.
#
# To enable this hook, rename this file to "post-update".
exec git update-server-info

View File

@ -0,0 +1,14 @@
#!/bin/sh
#
# An example hook script to verify what is about to be committed
# by applypatch from an e-mail message.
#
# The hook should exit with non-zero status after issuing an
# appropriate message if it wants to stop the commit.
#
# To enable this hook, rename this file to "pre-applypatch".
. git-sh-setup
precommit="$(git rev-parse --git-path hooks/pre-commit)"
test -x "$precommit" && exec "$precommit" ${1+"$@"}
:

View File

@ -0,0 +1,49 @@
#!/bin/sh
#
# An example hook script to verify what is about to be committed.
# Called by "git commit" with no arguments. The hook should
# exit with non-zero status after issuing an appropriate message if
# it wants to stop the commit.
#
# To enable this hook, rename this file to "pre-commit".
if git rev-parse --verify HEAD >/dev/null 2>&1
then
against=HEAD
else
# Initial commit: diff against an empty tree object
against=$(git hash-object -t tree /dev/null)
fi
# If you want to allow non-ASCII filenames set this variable to true.
allownonascii=$(git config --type=bool hooks.allownonascii)
# Redirect output to stderr.
exec 1>&2
# Cross platform projects tend to avoid non-ASCII filenames; prevent
# them from being added to the repository. We exploit the fact that the
# printable range starts at the space character and ends with tilde.
if [ "$allownonascii" != "true" ] &&
# Note that the use of brackets around a tr range is ok here, (it's
# even required, for portability to Solaris 10's /usr/bin/tr), since
# the square bracket bytes happen to fall in the designated range.
test $(git diff --cached --name-only --diff-filter=A -z $against |
LC_ALL=C tr -d '[ -~]\0' | wc -c) != 0
then
cat <<\EOF
Error: Attempt to add a non-ASCII file name.
This can cause problems if you want to work with people on other platforms.
To be portable it is advisable to rename the file.
If you know what you are doing you can disable this check using:
git config hooks.allownonascii true
EOF
exit 1
fi
# If there are whitespace errors, print the offending file names and fail.
exec git diff-index --check --cached $against --

View File

@ -0,0 +1,13 @@
#!/bin/sh
#
# An example hook script to verify what is about to be committed.
# Called by "git merge" with no arguments. The hook should
# exit with non-zero status after issuing an appropriate message to
# stderr if it wants to stop the merge commit.
#
# To enable this hook, rename this file to "pre-merge-commit".
. git-sh-setup
test -x "$GIT_DIR/hooks/pre-commit" &&
exec "$GIT_DIR/hooks/pre-commit"
:

View File

@ -0,0 +1,53 @@
#!/bin/sh
# An example hook script to verify what is about to be pushed. Called by "git
# push" after it has checked the remote status, but before anything has been
# pushed. If this script exits with a non-zero status nothing will be pushed.
#
# This hook is called with the following parameters:
#
# $1 -- Name of the remote to which the push is being done
# $2 -- URL to which the push is being done
#
# If pushing without using a named remote those arguments will be equal.
#
# Information about the commits which are being pushed is supplied as lines to
# the standard input in the form:
#
# <local ref> <local oid> <remote ref> <remote oid>
#
# This sample shows how to prevent push of commits where the log message starts
# with "WIP" (work in progress).
remote="$1"
url="$2"
zero=$(git hash-object --stdin </dev/null | tr '[0-9a-f]' '0')
while read local_ref local_oid remote_ref remote_oid
do
if test "$local_oid" = "$zero"
then
# Handle delete
:
else
if test "$remote_oid" = "$zero"
then
# New branch, examine all commits
range="$local_oid"
else
# Update to existing branch, examine new commits
range="$remote_oid..$local_oid"
fi
# Check for WIP commit
commit=$(git rev-list -n 1 --grep '^WIP' "$range")
if test -n "$commit"
then
echo >&2 "Found WIP commit in $local_ref, not pushing"
exit 1
fi
fi
done
exit 0

View File

@ -0,0 +1,169 @@
#!/bin/sh
#
# Copyright (c) 2006, 2008 Junio C Hamano
#
# The "pre-rebase" hook is run just before "git rebase" starts doing
# its job, and can prevent the command from running by exiting with
# non-zero status.
#
# The hook is called with the following parameters:
#
# $1 -- the upstream the series was forked from.
# $2 -- the branch being rebased (or empty when rebasing the current branch).
#
# This sample shows how to prevent topic branches that are already
# merged to 'next' branch from getting rebased, because allowing it
# would result in rebasing already published history.
publish=next
basebranch="$1"
if test "$#" = 2
then
topic="refs/heads/$2"
else
topic=`git symbolic-ref HEAD` ||
exit 0 ;# we do not interrupt rebasing detached HEAD
fi
case "$topic" in
refs/heads/??/*)
;;
*)
exit 0 ;# we do not interrupt others.
;;
esac
# Now we are dealing with a topic branch being rebased
# on top of master. Is it OK to rebase it?
# Does the topic really exist?
git show-ref -q "$topic" || {
echo >&2 "No such branch $topic"
exit 1
}
# Is topic fully merged to master?
not_in_master=`git rev-list --pretty=oneline ^master "$topic"`
if test -z "$not_in_master"
then
echo >&2 "$topic is fully merged to master; better remove it."
exit 1 ;# we could allow it, but there is no point.
fi
# Is topic ever merged to next? If so you should not be rebasing it.
only_next_1=`git rev-list ^master "^$topic" ${publish} | sort`
only_next_2=`git rev-list ^master ${publish} | sort`
if test "$only_next_1" = "$only_next_2"
then
not_in_topic=`git rev-list "^$topic" master`
if test -z "$not_in_topic"
then
echo >&2 "$topic is already up to date with master"
exit 1 ;# we could allow it, but there is no point.
else
exit 0
fi
else
not_in_next=`git rev-list --pretty=oneline ^${publish} "$topic"`
/usr/bin/perl -e '
my $topic = $ARGV[0];
my $msg = "* $topic has commits already merged to public branch:\n";
my (%not_in_next) = map {
/^([0-9a-f]+) /;
($1 => 1);
} split(/\n/, $ARGV[1]);
for my $elem (map {
/^([0-9a-f]+) (.*)$/;
[$1 => $2];
} split(/\n/, $ARGV[2])) {
if (!exists $not_in_next{$elem->[0]}) {
if ($msg) {
print STDERR $msg;
undef $msg;
}
print STDERR " $elem->[1]\n";
}
}
' "$topic" "$not_in_next" "$not_in_master"
exit 1
fi
<<\DOC_END
This sample hook safeguards topic branches that have been
published from being rewound.
The workflow assumed here is:
* Once a topic branch forks from "master", "master" is never
merged into it again (either directly or indirectly).
* Once a topic branch is fully cooked and merged into "master",
it is deleted. If you need to build on top of it to correct
earlier mistakes, a new topic branch is created by forking at
the tip of the "master". This is not strictly necessary, but
it makes it easier to keep your history simple.
* Whenever you need to test or publish your changes to topic
branches, merge them into "next" branch.
The script, being an example, hardcodes the publish branch name
to be "next", but it is trivial to make it configurable via
$GIT_DIR/config mechanism.
With this workflow, you would want to know:
(1) ... if a topic branch has ever been merged to "next". Young
topic branches can have stupid mistakes you would rather
clean up before publishing, and things that have not been
merged into other branches can be easily rebased without
affecting other people. But once it is published, you would
not want to rewind it.
(2) ... if a topic branch has been fully merged to "master".
Then you can delete it. More importantly, you should not
build on top of it -- other people may already want to
change things related to the topic as patches against your
"master", so if you need further changes, it is better to
fork the topic (perhaps with the same name) afresh from the
tip of "master".
Let's look at this example:
o---o---o---o---o---o---o---o---o---o "next"
/ / / /
/ a---a---b A / /
/ / / /
/ / c---c---c---c B /
/ / / \ /
/ / / b---b C \ /
/ / / / \ /
---o---o---o---o---o---o---o---o---o---o---o "master"
A, B and C are topic branches.
* A has one fix since it was merged up to "next".
* B has finished. It has been fully merged up to "master" and "next",
and is ready to be deleted.
* C has not merged to "next" at all.
We would want to allow C to be rebased, refuse A, and encourage
B to be deleted.
To compute (1):
git rev-list ^master ^topic next
git rev-list ^master next
if these match, topic has not merged in next at all.
To compute (2):
git rev-list master..topic
if this is empty, it is fully merged to "master".
DOC_END

View File

@ -0,0 +1,24 @@
#!/bin/sh
#
# An example hook script to make use of push options.
# The example simply echoes all push options that start with 'echoback='
# and rejects all pushes when the "reject" push option is used.
#
# To enable this hook, rename this file to "pre-receive".
if test -n "$GIT_PUSH_OPTION_COUNT"
then
i=0
while test "$i" -lt "$GIT_PUSH_OPTION_COUNT"
do
eval "value=\$GIT_PUSH_OPTION_$i"
case "$value" in
echoback=*)
echo "echo from the pre-receive-hook: ${value#*=}" >&2
;;
reject)
exit 1
esac
i=$((i + 1))
done
fi

View File

@ -0,0 +1,42 @@
#!/bin/sh
#
# An example hook script to prepare the commit log message.
# Called by "git commit" with the name of the file that has the
# commit message, followed by the description of the commit
# message's source. The hook's purpose is to edit the commit
# message file. If the hook fails with a non-zero status,
# the commit is aborted.
#
# To enable this hook, rename this file to "prepare-commit-msg".
# This hook includes three examples. The first one removes the
# "# Please enter the commit message..." help message.
#
# The second includes the output of "git diff --name-status -r"
# into the message, just before the "git status" output. It is
# commented because it doesn't cope with --amend or with squashed
# commits.
#
# The third example adds a Signed-off-by line to the message, that can
# still be edited. This is rarely a good idea.
COMMIT_MSG_FILE=$1
COMMIT_SOURCE=$2
SHA1=$3
/usr/bin/perl -i.bak -ne 'print unless(m/^. Please enter the commit message/..m/^#$/)' "$COMMIT_MSG_FILE"
# case "$COMMIT_SOURCE,$SHA1" in
# ,|template,)
# /usr/bin/perl -i.bak -pe '
# print "\n" . `git diff --cached --name-status -r`
# if /^#/ && $first++ == 0' "$COMMIT_MSG_FILE" ;;
# *) ;;
# esac
# SOB=$(git var GIT_COMMITTER_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p')
# git interpret-trailers --in-place --trailer "$SOB" "$COMMIT_MSG_FILE"
# if test -z "$COMMIT_SOURCE"
# then
# /usr/bin/perl -i.bak -pe 'print "\n" if !$first_line++' "$COMMIT_MSG_FILE"
# fi

View File

@ -0,0 +1,78 @@
#!/bin/sh
# An example hook script to update a checked-out tree on a git push.
#
# This hook is invoked by git-receive-pack(1) when it reacts to git
# push and updates reference(s) in its repository, and when the push
# tries to update the branch that is currently checked out and the
# receive.denyCurrentBranch configuration variable is set to
# updateInstead.
#
# By default, such a push is refused if the working tree and the index
# of the remote repository has any difference from the currently
# checked out commit; when both the working tree and the index match
# the current commit, they are updated to match the newly pushed tip
# of the branch. This hook is to be used to override the default
# behaviour; however the code below reimplements the default behaviour
# as a starting point for convenient modification.
#
# The hook receives the commit with which the tip of the current
# branch is going to be updated:
commit=$1
# It can exit with a non-zero status to refuse the push (when it does
# so, it must not modify the index or the working tree).
die () {
echo >&2 "$*"
exit 1
}
# Or it can make any necessary changes to the working tree and to the
# index to bring them to the desired state when the tip of the current
# branch is updated to the new commit, and exit with a zero status.
#
# For example, the hook can simply run git read-tree -u -m HEAD "$1"
# in order to emulate git fetch that is run in the reverse direction
# with git push, as the two-tree form of git read-tree -u -m is
# essentially the same as git switch or git checkout that switches
# branches while keeping the local changes in the working tree that do
# not interfere with the difference between the branches.
# The below is a more-or-less exact translation to shell of the C code
# for the default behaviour for git's push-to-checkout hook defined in
# the push_to_deploy() function in builtin/receive-pack.c.
#
# Note that the hook will be executed from the repository directory,
# not from the working tree, so if you want to perform operations on
# the working tree, you will have to adapt your code accordingly, e.g.
# by adding "cd .." or using relative paths.
if ! git update-index -q --ignore-submodules --refresh
then
die "Up-to-date check failed"
fi
if ! git diff-files --quiet --ignore-submodules --
then
die "Working directory has unstaged changes"
fi
# This is a rough translation of:
#
# head_has_history() ? "HEAD" : EMPTY_TREE_SHA1_HEX
if git cat-file -e HEAD 2>/dev/null
then
head=HEAD
else
head=$(git hash-object -t tree --stdin </dev/null)
fi
if ! git diff-index --quiet --cached --ignore-submodules $head --
then
die "Working directory has staged changes"
fi
if ! git read-tree -u -m "$commit"
then
die "Could not update working tree to new HEAD"
fi

128
conky/conky/hooks/update.sample Executable file
View File

@ -0,0 +1,128 @@
#!/bin/sh
#
# An example hook script to block unannotated tags from entering.
# Called by "git receive-pack" with arguments: refname sha1-old sha1-new
#
# To enable this hook, rename this file to "update".
#
# Config
# ------
# hooks.allowunannotated
# This boolean sets whether unannotated tags will be allowed into the
# repository. By default they won't be.
# hooks.allowdeletetag
# This boolean sets whether deleting tags will be allowed in the
# repository. By default they won't be.
# hooks.allowmodifytag
# This boolean sets whether a tag may be modified after creation. By default
# it won't be.
# hooks.allowdeletebranch
# This boolean sets whether deleting branches will be allowed in the
# repository. By default they won't be.
# hooks.denycreatebranch
# This boolean sets whether remotely creating branches will be denied
# in the repository. By default this is allowed.
#
# --- Command line
refname="$1"
oldrev="$2"
newrev="$3"
# --- Safety check
if [ -z "$GIT_DIR" ]; then
echo "Don't run this script from the command line." >&2
echo " (if you want, you could supply GIT_DIR then run" >&2
echo " $0 <ref> <oldrev> <newrev>)" >&2
exit 1
fi
if [ -z "$refname" -o -z "$oldrev" -o -z "$newrev" ]; then
echo "usage: $0 <ref> <oldrev> <newrev>" >&2
exit 1
fi
# --- Config
allowunannotated=$(git config --type=bool hooks.allowunannotated)
allowdeletebranch=$(git config --type=bool hooks.allowdeletebranch)
denycreatebranch=$(git config --type=bool hooks.denycreatebranch)
allowdeletetag=$(git config --type=bool hooks.allowdeletetag)
allowmodifytag=$(git config --type=bool hooks.allowmodifytag)
# check for no description
projectdesc=$(sed -e '1q' "$GIT_DIR/description")
case "$projectdesc" in
"Unnamed repository"* | "")
echo "*** Project description file hasn't been set" >&2
exit 1
;;
esac
# --- Check types
# if $newrev is 0000...0000, it's a commit to delete a ref.
zero=$(git hash-object --stdin </dev/null | tr '[0-9a-f]' '0')
if [ "$newrev" = "$zero" ]; then
newrev_type=delete
else
newrev_type=$(git cat-file -t $newrev)
fi
case "$refname","$newrev_type" in
refs/tags/*,commit)
# un-annotated tag
short_refname=${refname##refs/tags/}
if [ "$allowunannotated" != "true" ]; then
echo "*** The un-annotated tag, $short_refname, is not allowed in this repository" >&2
echo "*** Use 'git tag [ -a | -s ]' for tags you want to propagate." >&2
exit 1
fi
;;
refs/tags/*,delete)
# delete tag
if [ "$allowdeletetag" != "true" ]; then
echo "*** Deleting a tag is not allowed in this repository" >&2
exit 1
fi
;;
refs/tags/*,tag)
# annotated tag
if [ "$allowmodifytag" != "true" ] && git rev-parse $refname > /dev/null 2>&1
then
echo "*** Tag '$refname' already exists." >&2
echo "*** Modifying a tag is not allowed in this repository." >&2
exit 1
fi
;;
refs/heads/*,commit)
# branch
if [ "$oldrev" = "$zero" -a "$denycreatebranch" = "true" ]; then
echo "*** Creating a branch is not allowed in this repository" >&2
exit 1
fi
;;
refs/heads/*,delete)
# delete branch
if [ "$allowdeletebranch" != "true" ]; then
echo "*** Deleting a branch is not allowed in this repository" >&2
exit 1
fi
;;
refs/remotes/*,commit)
# tracking branch
;;
refs/remotes/*,delete)
# delete tracking branch
if [ "$allowdeletebranch" != "true" ]; then
echo "*** Deleting a tracking branch is not allowed in this repository" >&2
exit 1
fi
;;
*)
# Anything else (is there anything else?)
echo "*** Update hook: unknown type of update to ref $refname of type $newrev_type" >&2
exit 1
;;
esac
# --- Finished
exit 0

6
conky/conky/info/exclude Normal file
View File

@ -0,0 +1,6 @@
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~

768
conky/conky/packed-refs Normal file
View File

@ -0,0 +1,768 @@
# pack-refs with: peeled fully-peeled sorted
bc57d7f8dbed670621d075ff590713b391c7630e refs/heads/1.9.0
99f593a344e76b8622949dd4f23f77621d03b05f refs/heads/1.9.1
896edb6f7ec3c8e3497be4eb2d497b423a3b7b77 refs/heads/dependabot/npm_and_yarn/web/cypress-12.3.0
01be32c44253313faaa02efdfdb358c8a1ff94d9 refs/heads/dependabot/npm_and_yarn/web/eslint-8.32.0
80eef9828d0ba95c52fed5000944cf846fb5d19f refs/heads/dependabot/npm_and_yarn/web/next-mdx-remote-4.2.1
3a525bdb0b82cc1b5cd6f718f4f8342ca9e43569 refs/heads/dependabot/npm_and_yarn/web/postcss-8.4.21
bb7bf3dbecfc98269be53ffa543b369596f04cbd refs/heads/dependabot/npm_and_yarn/web/tailwindcss/typography-0.5.9
d3e9bcbe71ce5002254aaa8d1aff7433aff3d073 refs/heads/main
d2e42372d769b9fbc353f7614806b7305ec4cd5b refs/pull/1/head
3ea35be534c5575c6a9c5c64cb6cb772b961c0ee refs/pull/1/merge
38f05de4ca0649259b5dddee558b83e371e0fc85 refs/pull/10/head
4158005645a020bb2da41f545bca4ac370f6487c refs/pull/10/merge
0dc9b84e0f1780de4cab9c12708f6f18efdfb6a3 refs/pull/1002/head
141d5098484fc1a68113595502088743f7f15256 refs/pull/1007/head
71ae128a15b28c49ebffb463bd13ceba6f16f904 refs/pull/1010/head
af4896d9ec74a4c4cdfe86375ad0722b27ea4df2 refs/pull/1011/head
86e8aa8085c336acbc95947036d7b68e84bc65df refs/pull/1012/head
b7a0e926566a84e281cf7f1077ab9763f8a793d2 refs/pull/1019/head
6c2865afc3951ed83c4116cbbf1811b033bca038 refs/pull/1028/head
93c7fe4279081307c32a53dc65c5ea711079c692 refs/pull/1029/head
0aa790baac3942ba013794a3493ed5f679e9b0f6 refs/pull/104/head
3215ebe13db313e2fe5fc91c1675fdd10a58e814 refs/pull/1042/head
3509d63b67c24dc9867f35e2570a8e8ed776b073 refs/pull/1044/head
bd2c2b731372e153cf3a52f6ed34e030e79699e5 refs/pull/1047/head
3adfc35bfa5ef3712ce5be49fdc110c96a0b5b4f refs/pull/1048/head
fda749039c5d151ff0c6a287e204c83273484fcf refs/pull/1053/head
20f6feb5da598fb903f1255a16bc7d8c02753c26 refs/pull/1054/head
31777fe6183959249ddf9b738b35886f62851e80 refs/pull/1055/head
6c54b060401ade4377b569f9f5ce050002e5bfb3 refs/pull/1057/head
c8d5c7390355dd7243cd6bf65ac657b3f9ebce4a refs/pull/1066/head
fc56c9b7d7a7d915f7bc8517a052d6743543795b refs/pull/1067/head
c3bc21baa05741687499eedd9dc75c065254173c refs/pull/107/head
e7c16861e23425dcbb013ce0f860ebf72aa401a2 refs/pull/107/merge
70f324b4b013f7c3537d542f10dca76ebc3e06b6 refs/pull/1071/head
20bb56e573211cba7f3a99b383b51fb4015134b9 refs/pull/1072/head
93263c720f53cad7c4e0fdfbed74a579218e46ee refs/pull/1073/head
ee08a9e1b045e8d2f4f13a0e60c2f603b66b0d69 refs/pull/108/head
9301c7f4641039acaf7c654c61dffec8aa0a0f54 refs/pull/1081/head
1e1d496d0d29cb005a5be31f1326f65f4d0ba8d0 refs/pull/1083/head
5aff4cc1dad4154a728029d0a6ccee58728fb0b0 refs/pull/1086/head
d3e83c78d29daf6316b9593a18fba07db7f520d7 refs/pull/1089/head
730aa20f3c54f6b98f84e18ab0e7d2ac7fc0edb8 refs/pull/1092/head
67999efa3094857d1aee6ffa31bd350061ee5164 refs/pull/1093/head
8ebb75485d62e80abada4e4fb932eb7f93db80f9 refs/pull/1094/head
b08410dab4e85ef3fbcf0a0090a8de2a66c85e07 refs/pull/11/head
a055a813e5af7e134ca8d996231a475ee1fa7bf3 refs/pull/11/merge
7be3542f7a0a4335a73b557b608fc6ee1c04773a refs/pull/1103/head
b36f13e09192bb037446de2d0b4c47e765bbe4a3 refs/pull/1104/head
f1a3542734cda5f914c15550c55812c5d26cb1b5 refs/pull/111/head
db90dc131c92ae332711f74cad7a633bc90ac38e refs/pull/1121/head
bd92c83711b5a3a0ff6b540f6f851d4c9a689e6b refs/pull/1122/head
58d59a9f3893f18b5844ca4b6dc1e376d048325c refs/pull/1123/head
d6dd45f9b4a6cdc96a363854fe4144297bd491f0 refs/pull/1123/merge
fbe651084edac040d7f4118110901e8bdecae5bc refs/pull/1124/head
3b656b96fa9b2f9c1b529085b6fe2bff60d73419 refs/pull/1135/head
bb613756ca53fd9eff3c9bab4b921741a9c0d04d refs/pull/1135/merge
2780aaac29f6df054a64990bd16f2aeb46c3c458 refs/pull/1141/head
7397cd48d4007651fc833a1e926f4d2f3a5450a8 refs/pull/1148/head
06722e4a2a53a8193efde91034f299eec0a4103d refs/pull/115/head
797702270adf3501790916715ad7945a78340993 refs/pull/1154/head
74ebc131217bb573dc3f497baebab7d7a9ebd30f refs/pull/1154/merge
04f8dd6d620bc1d52eeb30315552c6d8adee001a refs/pull/1156/head
bc325b30b059eb5cb59e8c914a0e4d3cea59ff5c refs/pull/1156/merge
69c6a55848b805d782feb27c489a8b1f3e5c9d2d refs/pull/1157/head
eb6e8b7767f8a2ed57151840a41a04f012f14dbe refs/pull/1158/head
7283075c013664c42b9121d32da6c3476e1b32d1 refs/pull/1158/merge
0163841ab562635c1e6df6f07896d3445674d14d refs/pull/1162/head
0d7a90669f4fd354ce1cf191235df882f42a35be refs/pull/1162/merge
2b8be163a6a018cc909ac33391dc6caa93af3542 refs/pull/1166/head
5430c4fc0b9f273cda79433d05ce4f4f1ca6a58d refs/pull/1169/head
4c22e91bb3928e1d832a606e183613c2157bcd4c refs/pull/1170/head
4ca8d61eeb8856b969e2154346b6f78343fdd673 refs/pull/1186/head
61db91ca667d57625c4704aa9868ec11943acb71 refs/pull/1186/merge
11ec0105612b0995cb3f6a3529ce3377681abe9b refs/pull/119/head
0956b689ecc7cb89380a419a1136d53f1f3e4d8f refs/pull/120/head
9fda537b179e737416982adf5ba0ba5cd2b34139 refs/pull/1204/head
f08e55fca0f2f496617f4aa0e52495821a7c498c refs/pull/1205/head
df8036041f7eaba6d454f890698405c4f1c315f6 refs/pull/1207/head
a43b673b6f7cc392f7b571fe424e37de2288fde1 refs/pull/1209/head
8bf8859c7311d4216bf36c0fffd18853f22e6379 refs/pull/122/head
b1dc1a9fc82b5a2ae5b453bf7c74b8249b67a16d refs/pull/1220/head
a2dd27f2b0afc87fb5163b84f188db3c9b5f61ff refs/pull/1222/head
fa671d7b797de2d3d6b04c01a47953f70208ba7b refs/pull/1223/head
199c601686e33f4fe5a03f166bfc78f5b566d4d1 refs/pull/1224/head
6a788b04ac52c35a8439cd9d76b384ff23a4b4c8 refs/pull/1226/head
4f7fd6aa90c91f37f10500db03ee006550a54522 refs/pull/1227/head
87fb67280cf49d1f297701ebdb75770e142cad6b refs/pull/1228/head
5ecdc3ce0ef8a42fc5b7569d28051936e1d3c514 refs/pull/1229/head
eae22435cbe293d0544e9defb6d48dc28fe49bce refs/pull/1230/head
a95fe58fa798a1b347f63c28578f4fa0f346235a refs/pull/1231/head
b94f96ad673b23babf68acf29e63d09e6c4a7033 refs/pull/1232/head
fb754d445660efc26e2f2d7c3927eb85cb98df58 refs/pull/1234/head
99709daa8883f848985bb73982cd273c4f21797f refs/pull/1235/head
47cb497b231518c7e8f0de9f8cc690994f3b01d0 refs/pull/1236/head
3fa8eeeb63f4f4395efb1c68623028979f2cde4d refs/pull/1237/head
231bccd536d23fc555a4e2879cd6494b34eaa1eb refs/pull/1238/head
717f4e8bd3092d2e8a0510eeea5a8e388ed4324c refs/pull/1239/head
83ab15cc459a19859adf3e451cb2e8c6822ae6d1 refs/pull/124/head
ac4e2b1c11d9079d01b9e8392ab05451ae88770e refs/pull/124/merge
2ecdec454e1bffb73a5011ec15db0d652a4a18c8 refs/pull/1240/head
64befa63a9ab090fa527e030cdb1b122323f57d1 refs/pull/1241/head
7024dccae3c7f49856c629a081dc7547729ad3c2 refs/pull/1242/head
28484a08b76883ab6280fe1cf6f2ecc2a288bded refs/pull/1243/head
f80f6d4c110617fef0c20b2c7d91000422d38b68 refs/pull/1244/head
9cb59d966d5169c9c7c0109e3322ae26ffaed167 refs/pull/1245/head
0e98d1e1ad81c818cc816b7af5b07fa15ee8e4bb refs/pull/1248/head
b5e4056b9d10588e6d741946196821ae5246b82e refs/pull/125/head
8a1de4317e438030bdf1213cda92fafd996be22d refs/pull/1250/head
cca610be95f4378404d7963a20ec067c6942f918 refs/pull/1251/head
29c1881555b7cb28c34aa56c24beca3dafd20124 refs/pull/1251/merge
c669cd2a820bb58b2e1c88e233c96959e11ac544 refs/pull/1252/head
d6dcf80fb5fbdb4c6992a4f7277b01d03eda903b refs/pull/1253/head
483136c3e90849e9a131e0b8f491684605a24bd4 refs/pull/1255/head
6a26251800166e007a91d600d419c83e022d485c refs/pull/1256/head
9be6c9a7498825914e08da642032d0a3dd549665 refs/pull/1257/head
b156f2063c26136a5de78344ab402bd5170462af refs/pull/1258/head
77fcf3901e3e5f4a9e4d831fca72e4c69029efa6 refs/pull/1259/head
fc6888eee32f783c11faaa7de1c8ab079b833926 refs/pull/126/head
7ee4e1c8ff9aa7089fbf411cc19b077d552c9b02 refs/pull/1260/head
d976b52a116cfaacae122307aacc006e0628e027 refs/pull/1263/head
f0ba21313d2d198531592e2d4edcd1c7e522d546 refs/pull/1265/head
34d94d1a7b25a293f5a66e144494ac910b55eb22 refs/pull/1266/head
e751f57cd07998231d531f4a7430b7fee21855c3 refs/pull/1267/head
ef8b03b03c17403618f48300e43529cbc377b096 refs/pull/1268/head
d91412b82abb6f3a7491cb69184c6f74826e878e refs/pull/1273/head
cbbdd509e557e423eac76ce688b8e5a90fe94015 refs/pull/1274/head
95e5b36106fe3600aa7bdb369f475b6df3150b7c refs/pull/1275/head
08823a9bd27c410301d76589f14a9814637e0133 refs/pull/1276/head
9f712c251fa9747a72bdf8a67c81cf926c053a3a refs/pull/1277/head
b48b3467f3e6c358f2547c5997ee4ce0c8c7e44e refs/pull/1278/head
c12348020bd31387cd1a3ced9d9f360fd4ccd8a6 refs/pull/1279/head
2104fb5e435deccf4becacbeadd5953ddecb5b7f refs/pull/1280/head
1f1236daa474ded1278f0fe5fadc87c77e071efd refs/pull/1281/head
1d0c57d2eecd14fb7a4be8b3f8864e1303e1313e refs/pull/1282/head
9490fc4565fd96110994161b9950cbf89082b844 refs/pull/1284/head
14f1839952c2672662edaa472b37dc1356b73e96 refs/pull/1287/head
242ec317d40b3fcc8791faec43253baf85dab7a6 refs/pull/1288/head
7042600fc89560023b5aba4b956d846b099b3870 refs/pull/1289/head
120dd9b352f744bd71f97a7ac3adc18c11856988 refs/pull/1290/head
b6b7976d9102559e893f41fd3f73e0faff3e142c refs/pull/1291/head
a468d32e4ffa5d03602b250b3efa501fe937996d refs/pull/1293/head
a13e34a57b43d75f1f87ae747ab6b19f78bee641 refs/pull/1294/head
5f64c6bc057a8a8af84dbd88d07921c587b308b8 refs/pull/1295/head
f6335da0c87cc9cef25d7f4d267de295e6158a4a refs/pull/1296/head
033a7bf38a7947eca24be16f35b73a64945ae23c refs/pull/1297/head
c050e43c21f064c5f4b6d1a1be3c9c86e9f4ae1a refs/pull/1298/head
d28949fa0e8b8c77eedd0a8be0591612119de6aa refs/pull/1299/head
550d644e6c05682951aede8c1935201c4f826331 refs/pull/13/head
915a5d12eab8d8873777a0a6ea706c9e10d81965 refs/pull/13/merge
23891c7cbe0e1ca3141b02995b9ad1156b4bf856 refs/pull/1300/head
4e0ea0532e08d898eb94a7c8d807182b5f47441a refs/pull/1302/head
64d5f6f36a6559059842b9c69eb6433b516e8eea refs/pull/1303/head
c547c00e5f647189631220d729a8ae4c22845e01 refs/pull/1304/head
d32d7412122b46060be1529c059912c05a10cfa1 refs/pull/1305/head
017acc0b59fc16515d015ee7618ad61c3aaa8043 refs/pull/1306/head
75066bd52b78ab5c6a0646163cbea3500c37544a refs/pull/1310/head
5e2731943bbd4d21b629e232ac0242a30bfde04f refs/pull/1311/head
7f782d5de89f065329a66f4c2e3726be72c6f985 refs/pull/1312/head
95959e78b6d847cc1cdbee7e8adbfcf6258a89f8 refs/pull/1313/head
00e2acd03d7051520194d99254732a92d0f4e73c refs/pull/1315/head
74f5938dd926e54554085d97c6057882b021c357 refs/pull/1316/head
9f8a00513123762115fd4b95e396c4cae2da5715 refs/pull/1317/head
8845a4aec3c0df923d4a671b9343dba864157cd7 refs/pull/1318/head
700f961d8b781614ab2d1c61bffd5b4202b0f89e refs/pull/1319/head
da54a2d53dc752c45b46a1c28bf5682b21a545a9 refs/pull/1323/head
b060c391afd9fa34e5567aa704acff516bd4b2ab refs/pull/1324/head
6870ffaa4765cbedb05982bb3e619a8a2f1d47e9 refs/pull/1325/head
6aefbfeea8e4ac89d4df7d516ffe1e75a4fefc09 refs/pull/1327/head
e33b13cda43ccc859089b70aca750f278454d8ff refs/pull/1328/head
0c567e3cc0104c7d3e7b638ea47c8c389ad2cddf refs/pull/1329/head
d4085d923afca4cb9d7854d25b6609c07e6042a4 refs/pull/133/head
d84baf055d9893dfc29bdb20dfd7251c7ffb5572 refs/pull/133/merge
fdaa91857da063c3481a807374096dbe00fe0a85 refs/pull/1330/head
a0eabfeb1d7dbf71fd473562685150f9309e103c refs/pull/1331/head
aa3f74f5d705c8f8ee0a1ee1c286bc552d83f1ff refs/pull/1332/head
86e88c5967769e4b9fa9b44c9ad2a8453457bb5e refs/pull/1333/head
72c1c5e0bfc63197fa783b90b3aa049a9a38dfe2 refs/pull/1334/head
67912853cc90bef17a912c4440e0c96ca09a5969 refs/pull/1335/head
25a36c5cb4268544caa0843bde968a9c75df6596 refs/pull/1337/head
0ab7d5fa3385a99f0719970a3b33ebee25eab91b refs/pull/134/head
15ca7cff9af5568295e2c55fc387ac2f4ab37bdb refs/pull/1340/head
a89eb65e588b86990389d9bb3ab5746176797ecb refs/pull/1341/head
68e01dc343c482eeeb4dab89be1096c46526f600 refs/pull/1342/head
51b77da98d4faa1c0caa9705d5ccad9e097fffff refs/pull/1343/head
c31f00a637f202a455e9cb6592343171e650cc80 refs/pull/1343/merge
61eeee330b04f6f37046b877ed18d9c0c70e0a7e refs/pull/1345/head
d85318b1eab212b224a364de5e018ad7b059d62d refs/pull/1346/head
88d86877b246791b6740fd8c19b6c52774a38e2b refs/pull/1349/head
292c9919beae59f168b578de604037e0dc6e53b5 refs/pull/135/head
26a6c926afa50b7afb4ec2be40468e7581484170 refs/pull/1351/head
16cf73d8e53d2265fa0866d0ff91c6554334f882 refs/pull/1356/head
ecc4704b9f259fa5661ed7e4013c383b171dce32 refs/pull/1358/head
b89ee262127ec441382047d1d582d574c4ad94d5 refs/pull/1359/head
6026ce16174bbd9905560d48e392bfefe120c3c6 refs/pull/136/head
0e3eff99338df5025116e41f4e65a7fbe8d8585a refs/pull/136/merge
e293ec1d34bcaecae134bcd7f66dfcabe9789b34 refs/pull/1360/head
c29e039e473c001ae89b238b004cd79186f72e96 refs/pull/1361/head
7318faa4530c3b6a60809a8cfc2fe9832e450d9b refs/pull/1362/head
dc18c450b422b65f3c08aced8aa54caff4e8c1e9 refs/pull/1363/head
896edb6f7ec3c8e3497be4eb2d497b423a3b7b77 refs/pull/1366/head
07371a2027c591ff54d54b7fd07a3a60c80c0da2 refs/pull/1366/merge
3a525bdb0b82cc1b5cd6f718f4f8342ca9e43569 refs/pull/1367/head
5c0cb4f0de5b5fa0c7f46860ce4a5bc5cd92afcd refs/pull/1367/merge
80eef9828d0ba95c52fed5000944cf846fb5d19f refs/pull/1368/head
40b92b4a93b6883d51ef4ff4a98b027535948d30 refs/pull/1368/merge
acd1c05d7416ab80f3ba2056122afe72875fc66b refs/pull/137/head
01be32c44253313faaa02efdfdb358c8a1ff94d9 refs/pull/1373/head
fd8b8f9a85457242b9632e112015c554f3e98f27 refs/pull/1373/merge
bb7bf3dbecfc98269be53ffa543b369596f04cbd refs/pull/1374/head
74c946a1b71720e78bedf4ff6b87df82ec74208a refs/pull/1374/merge
b502ab5f5b3102e3d23c96629859184def45dc12 refs/pull/138/head
56b5a7eecae47f13bd5a4bc496863e179285667d refs/pull/14/head
79d5ddd5b50fbb89cf422671557eb0c333c1a5c8 refs/pull/14/merge
caefe535c798c5e17480200f0d29a09233a28316 refs/pull/140/head
c7108d8261fd8108dee5383c1df10bc08d8c5e7b refs/pull/141/head
45449c7348ae37ce9fa8ca785fdea1bb32a63552 refs/pull/148/head
4868ca0cadb2137ddcc03f16cd1198833fe6f0fd refs/pull/148/merge
d80a97d2f2b5bb0f7c81d653f65097ecfaa97aee refs/pull/15/head
a286983c4e27fac8b01102eecb120d8175958ccd refs/pull/15/merge
2c035f3cb01c148811d8be75977058ec7de84d29 refs/pull/154/head
96e4313a47be90ab32b6259b686682d42089a38d refs/pull/157/head
ba76bf00ae9d4f02342204ca8dcdc91f37e98bf3 refs/pull/16/head
439bee229d84158c8f22eaa13972c9c6e0957a42 refs/pull/16/merge
1dd6a47c2488a08a9930abec78452de706e84a83 refs/pull/160/head
2231588b284c5b04043d01b1b2036f851161d563 refs/pull/161/head
01301f31a3e88e3597f11999a8228e0407f2c04b refs/pull/163/head
3a574ba88b8ee8dffe748bb7f6af9d240314f994 refs/pull/165/head
2f362e44a59aef11a9b1c84b4d0da6be172effe1 refs/pull/166/head
162d9d13b7fe27ded15860e9ac311f4e07e7d40a refs/pull/173/head
b82eaa2333d6c2225dc19ccc9c53e645aaac85ce refs/pull/176/head
ce08b9fe7b20454870a4aae20b442da24ce51dcd refs/pull/177/head
2599288a972003e6461fed0abbdb71aad644a3bb refs/pull/178/head
300560dbd45c297fa349c8d10954a41a90602f0a refs/pull/179/head
22fe3b1ea4f450061dc8dcff1bf4b8c4b560cd7f refs/pull/181/head
d8f75860b25aa0de8f0582a8fc1143b648158a05 refs/pull/182/head
0dbd27d2de25f6dc89fd34a5c5504d2bb32fe6ac refs/pull/184/head
e7cdccd964e56df89a34fd6d67601d27db061036 refs/pull/185/head
35b4d472c597cfc40b53695a63b89138fa13bf42 refs/pull/186/head
6526a275b03735dc3d0395349cee71482a2265b1 refs/pull/186/merge
57d9fdd0e097b6a76fea15b9bc5763396a838ede refs/pull/192/head
3e011d935bbe0019eb4ad265cbefcbc4491dccfd refs/pull/195/head
92afba39bec163e4f4421d57180926e6c7018f86 refs/pull/195/merge
7dff2e5577b66c4464a5949dade409c064be493e refs/pull/196/head
98c4100b66d441c9e96a3d7adfd04e4c5501253c refs/pull/198/head
0e1f4526b425401a4ef882b5b1f104384e1f3c15 refs/pull/2/head
068d189597ff6aaac230f06d5341497c52889ec0 refs/pull/2/merge
48afdbf377f4a01768293e70a903fc11c9b5eccc refs/pull/200/head
955eaa2390ac7cacc5ccda73c703df48142b9fd8 refs/pull/200/merge
3ced96bbf02b6b0afbecdf8ac4f2834d3a8bb46e refs/pull/202/head
eaa3ed864c600fdc08078a171638a976efa52cda refs/pull/202/merge
505c4286b4829facd420629e77a392478a2c0f5e refs/pull/209/head
1aaff10997a438075b3714238941836bb72e129c refs/pull/213/head
d5fe4558f59f1778762354b59dd187f9151fb61f refs/pull/214/head
e0d74da6e77e12d0bab498f26fe5b4565a7e62e6 refs/pull/215/head
8ccadeb7bb622d56fe79e1ef26eb1c83b0737909 refs/pull/219/head
f670e70d7c0ffcc602f40aa1856fe085e5800455 refs/pull/22/head
364009fa6e04b62679a88dcab859f690976ea0e9 refs/pull/22/merge
933852d1b8194f1b22cd458ad412f52803a256f2 refs/pull/226/head
67e814f1822efb278b631b44f1fe9f37bd22bf68 refs/pull/227/head
32a7343539d804c93937dd7f148b65a705963a52 refs/pull/23/head
6f7cf4acfea70329085643c6b26f5d154912c038 refs/pull/23/merge
5b590ad6e2af3a161cab56a2694286d1f4ce54e9 refs/pull/230/head
32d93ff763df7ba6ade0c7d739c758fa51223eac refs/pull/232/head
a90faa2145d70d65c41279c10d03fd4b5f3e4c25 refs/pull/233/head
94d8c057bdd77fbbecabe0a58325da9406a8fb60 refs/pull/237/head
57647fff7eefb438ffcd2ca0b32abb0124eee6d8 refs/pull/237/merge
8a7d7a3d904b2a4ac7d14f65a936a181567ba563 refs/pull/238/head
f3b58d7a891189f86fd3fa4d6ce309c24f4b9d73 refs/pull/24/head
bcd2991d78ccad01a4580a33639c670cb11939c6 refs/pull/24/merge
622516d12ab09f749b66b6b99867cc248cb0cc4f refs/pull/247/head
80153712415dde336e1ee1506a0a72a1aa65f8b9 refs/pull/248/head
aa9ef97b73900b8313c06f49e77f5ed72af1c731 refs/pull/250/head
ee15bff5fc04a069dfab504b9c9bbf986d79644e refs/pull/252/head
bf4d99ad8140145787f3fd5ce758a4fb3c7b8712 refs/pull/254/head
bd4e04664cf8848e177d3ee2b010cd41fbd1b608 refs/pull/257/head
3c1705c453502492394330323c25bfa8e3cc72d2 refs/pull/260/head
b4ab88c2ecbce9b354096e4295603b8d882a69bc refs/pull/261/head
4d205ab9a3e1b6f58d831415b027a3ff06839ed4 refs/pull/265/head
1454c38f3d4d250bbf93c2b2eea33f289e7d9985 refs/pull/267/head
0dd70f711c02e2b89344c5bfa168812f10a1093f refs/pull/268/head
7877dd98cd167d46aa3ffe65c25a2abe1936e884 refs/pull/270/head
d1047dca37107a2623072895aa9ddeefccdf43c8 refs/pull/271/head
545ee56c48aa909cae5ac886a7ad78973ec40211 refs/pull/278/head
76fb45b1fbcd44644d93ac0475c860db00a4a3ac refs/pull/279/head
220438345cefb411dbe30f66189cd1bdc940b02d refs/pull/281/head
6667415960392c3216f6fc1df0bcbf4d0ead56ce refs/pull/283/head
d97f715a23c3c5702c7976d138a2c14010287372 refs/pull/286/head
476c31247dcb0670801e73dfa9b33d8e62b7a1d2 refs/pull/286/merge
3807bfef63d7aed80b289de72ed16b91d77a8bc0 refs/pull/287/head
001fe254057033221891dbc1c56225c00c0fb5a5 refs/pull/29/head
0329c6f56502208788ab2234fd29ad9f34330da2 refs/pull/291/head
db270a72b39dae2c7be55f2b78d5216785efc1d8 refs/pull/292/head
3e77ae74bf5a7b3b5666060db57468dedcbcbd65 refs/pull/297/head
24eb5f9de3e481e7d74af149744e2d474c9ffb8e refs/pull/299/head
b0a22d534d321f21ce7e6fe1d099271da28010eb refs/pull/3/head
28aba12ddbfc241f68c27f1315841969b78bb25a refs/pull/3/merge
935280e36ce2d30187c814da60808da61c1d122b refs/pull/30/head
7a284dd37d3538d2329a369187d8a26fb148a343 refs/pull/304/head
9ae9ceceabb630b4625b717affef7cb9a1980e77 refs/pull/309/head
361e1224b51cc3dd8cfb323905af13e18446c015 refs/pull/31/head
9e37808b16ce4969b211ce9361893c273bb1a705 refs/pull/31/merge
633f54214b616ef91207ae5b8c7dcca9f5397dbc refs/pull/317/head
ee9504bff7ecdb00887c1ddb99026dfb2aa4d842 refs/pull/321/head
6aa4f77db7bb5894a4888bea4452a6ec41ea1f2d refs/pull/323/head
e21586ca95edff9a429e988ce711603fd0b6b48a refs/pull/325/head
12829e0fd363248d7f677ca57db2ba6159bc9170 refs/pull/326/head
f8d71d261a189226294eb6226bc2a9ce2661ad8d refs/pull/327/head
68263d4556627f9c1033bf348f81287111d48b94 refs/pull/33/head
e18dbfc6786b54447c3394d9a9b1522232facdaa refs/pull/330/head
0e62dc28049643f1c6b300277d27828b22b5a15c refs/pull/333/head
cb51234e4a6fda3489e8a1e263d63106aa09b2d5 refs/pull/336/head
5a4437009747fa9f7b4aaa8a6420b45c9d7dd5b9 refs/pull/336/merge
5ea37b4b521823352f97307e562336a54073a93a refs/pull/34/head
704b30be9cc42e1ac284f0c1b79e9a64be943723 refs/pull/344/head
2319a98936c8c5c3065da3fe919bf5ee04e63ae7 refs/pull/346/head
ac4cefe4b7093374aca264ee219dd79950fb5d23 refs/pull/356/head
f4904943bc28b2ee35dd549a6d6d840723ee50bd refs/pull/357/head
cb5401d7e267ef92cb8dead4298a75005ed5c617 refs/pull/359/head
99f593a344e76b8622949dd4f23f77621d03b05f refs/pull/361/head
bcaeffd62b3853bfc4e0714e11016d27d570ebfa refs/pull/362/head
26becd70f40ec7c5c9edc9cb226a7ea45c161823 refs/pull/363/head
4cf2838ffbe8f7f40da530f123915f43f64116c4 refs/pull/367/head
5b67c01838a05904ec41a72fb0dec7151eb8eb2c refs/pull/369/head
cfd4e67c7539121055ded73c32aef9b0fdc75bd9 refs/pull/37/head
b9def6994c439188d75dba2bf78a1dcf8acceb4b refs/pull/370/head
649dee4d6201095f6bd9aafdb88fbd85997c513b refs/pull/371/head
7a8c3b51799f64797fbf4e467ded10032e628257 refs/pull/372/head
71bf0e6a955add5b5003c363aae2ae2da397da75 refs/pull/375/head
62cfd67728b9bc35ab1493eb2f50ebc5f1c4bcfb refs/pull/38/head
8a04c9ce3fa8df75a739b1ce82086d911fdec656 refs/pull/380/head
1db4a0c65c4f84c2ed934fd070fc46b68dede2f1 refs/pull/382/head
27dcffe2f571cad595581d5d107c1eedb7883441 refs/pull/383/head
8711bc5142b95965efbae234c429a1ac6bbccf7e refs/pull/384/head
2a1afbbbbab23bd4f2757b8ead6f0db2be21555c refs/pull/4/head
5045fc742282a2a04072c785ab0e9447a67714ab refs/pull/4/merge
6140122b82d50acc333e5d2a813cc1933ecc6d21 refs/pull/402/head
a686d60bb26152bb00a68b64c1921d97e3c43058 refs/pull/405/head
3e170a6639ec5ae0fd056d9a55a17879e61cce5e refs/pull/406/head
8016301f98230b162750856eb1e22efa4648a28c refs/pull/406/merge
d3065426868cdf63ccbbaf6afd917de64403ae49 refs/pull/416/head
f8efb67513ff4ad2f1eb7e169502693240d9809d refs/pull/428/head
0071682b1836396a7c424a41c44c25d78f5f8628 refs/pull/428/merge
b12e0acaa131a294da178edf4a3b2b996f7a7edb refs/pull/429/head
2e1f021dd48edb845e465c6239098a8cb04a29c2 refs/pull/433/head
cda5afda69764acbbb2374eb3bc1abb7dd4c9ac8 refs/pull/44/head
2a899e73bd085458ae6882fb00afec3cddfe1791 refs/pull/442/head
3ab4eeeb958d1ba723268a1cc52c21e7fdfc91a7 refs/pull/442/merge
cdd2e2e12ea6be59651f31c50089897da69a3876 refs/pull/445/head
0006dc09dd3139b952344a4e286e1cf9c809e8ca refs/pull/453/head
b0f02c20a039f6c33dbc631102bf7d891f620bcc refs/pull/455/head
a7edeeb072a5af9fa9dbe78fba7f2e17705936a0 refs/pull/457/head
96bc1ae32d5ef2192c72d58be8a063b987d65c22 refs/pull/457/merge
136bcce2a2ebd41b48b99d634c1c248301c4c6ca refs/pull/458/head
b203f35f5259f9d36b8b0e4a610ebd5ad17e6a36 refs/pull/458/merge
f20536d3c18d7af7dcc3d6b441ba6e53febfed01 refs/pull/459/head
1f5497255e598a2cb3d12f8fc177fcc78b88d8b5 refs/pull/462/head
139ea1d593a22052aa9d9e7872b6071a721c6de6 refs/pull/464/head
99ce87ba20a16bf2d11d922fb2aa35e489f3d20e refs/pull/465/head
0fb5d65b22e7bb45c2860572a5ccca8c65189aac refs/pull/47/head
eb4a01a26a35d0838384f252937c422cde529201 refs/pull/479/head
9809f7cd91be1aa56932e655a78cad451f236304 refs/pull/48/head
ba385a3a15a52966abb2e18d8a200d08f65c77ad refs/pull/480/head
699e9fbcbabde651079aeafa0484096437cf8e8e refs/pull/482/head
7bc6e300af0f4d7ddb9311a0a1860e288bdafaee refs/pull/486/head
496172a3fa0d783d7342f4a3a84dc8d4e89b5e87 refs/pull/487/head
3cb318de11c5995e9d66564a90b28c381629bfd5 refs/pull/487/merge
d06e020a4e9545e403fe05786811564ac5c68289 refs/pull/488/head
b91797ab9d7fac0996bd5740013fef3cb6f94c41 refs/pull/489/head
476b70a2d38f530fcde97e20014f46efc51c5c8a refs/pull/490/head
ed10d927c7932afb6464cdd50ddc5a2f3d2089dc refs/pull/491/head
5984d9e562d8ddb66fe7e623900a41b3b63c470c refs/pull/492/head
bc1c2126927ad1037a25bec91f6216c4e63e0ee6 refs/pull/493/head
b788aa76dd41e966d959c7acb9a6db16faa27330 refs/pull/494/head
14b5c8da556795d6bcf1a9e7f6e74a6abbb3fedd refs/pull/495/head
b1de1fa43a9429c6bb51ea3caf25cb03a761327c refs/pull/496/head
522a865c4eb9bed870d4fc1526ce272f4114c89f refs/pull/497/head
33383d322bec3df938bba1ea83d63b640516f984 refs/pull/497/merge
03d1bc7d10b60a5ec629e3f119e7cc87230a9e52 refs/pull/498/head
bc1c2126927ad1037a25bec91f6216c4e63e0ee6 refs/pull/499/head
894d817dd6eeb9bd1b9f7424d62aa3a2d2043822 refs/pull/499/merge
3eb3ed319a3a4750563600ed1e4ff52d2fc7e359 refs/pull/5/head
de2e3c8024d0f64d8bd9f7ca2df0c3d5fd2733af refs/pull/5/merge
f48c80cad114573a113810911d5fda4a1ab295e5 refs/pull/50/head
551a277fb931c7300648e4e7c7a5f4b2bdad22b1 refs/pull/500/head
d476e87b6ffcc25ba361770811d6a8b5c601d37d refs/pull/501/head
be5c25d577dc2daf9129d9f73fda562f806a6833 refs/pull/502/head
a082267715e65e5dfd884b5d029f4a75600c5973 refs/pull/504/head
cae08cc680163e87a0c46ae25fc42bc39436d803 refs/pull/505/head
03f8c9dacd95692c96872e795cb6511eb09e7f28 refs/pull/506/head
ec3d61ea1a4d419d112ae125e42aa972c7e95168 refs/pull/506/merge
4db51d979c49324a05807a4c4e72a7409bbec607 refs/pull/507/head
a474edce46b5f38c269425342100ca414aa5e7f8 refs/pull/508/head
4db51d979c49324a05807a4c4e72a7409bbec607 refs/pull/509/head
db3c105642409fe035602f3564e0cb4a0d82d646 refs/pull/509/merge
8aee8d5e33351258dc28161b680f24631ec00396 refs/pull/514/head
c6d2a43d28c4f5970cd262ac0d88f22f37f6ed66 refs/pull/52/head
06b2ddcfd1987226105b617ccb52e657c3cf45ba refs/pull/524/head
06b2ddcfd1987226105b617ccb52e657c3cf45ba refs/pull/525/head
dde16253760bdfeb08d84f1de6202cff83efcfe0 refs/pull/525/merge
8d3c4bb5b2ae26e01afacbb385e4654d985b5b7a refs/pull/528/head
8d3c4bb5b2ae26e01afacbb385e4654d985b5b7a refs/pull/529/head
8bb8e36241364d76e522d0c7a27d47d2344e9b43 refs/pull/529/merge
d8e21721b6dfbcf2619e1bb07bb23dca2c6c21a0 refs/pull/53/head
0904c08e9d6a4235faf400d1bc1f08f450eabdab refs/pull/530/head
4647b0a86fe3feec04e4bb37fc4230d11f4ae087 refs/pull/530/merge
b83646de2fa012b103fd12023b272edd6dc2398e refs/pull/532/head
a299cf5961dbe2bcd9ecc33b4d41fe0584917d16 refs/pull/534/head
6aabce2c18ccbb65d81e926cfdcfdee7c4300041 refs/pull/534/merge
a299cf5961dbe2bcd9ecc33b4d41fe0584917d16 refs/pull/535/head
3e85698458c6857b101ceaed1fa862907d086025 refs/pull/54/head
d04f21efe6d0349c1ec6e7917aa6284fcbe2bae5 refs/pull/540/head
d04f21efe6d0349c1ec6e7917aa6284fcbe2bae5 refs/pull/541/head
24cea025cd267e17e40db0c0a24966d5c6091767 refs/pull/541/merge
9ce42a83039430287db711e95d1583cb942ef511 refs/pull/543/head
3840e952bfc0f175d692f10308bef435e347b2a2 refs/pull/544/head
bd0c2dd6a23a27a5dbfebed284dcd59ab0245a12 refs/pull/544/merge
246aa5d5e91e75b8b1651a06bf4c1d92832f06e0 refs/pull/545/head
52e0a74ffa21594a6dba24e75fcd5937e33aef42 refs/pull/548/head
7dacee7c00cb806915bd1768dfab283be3649603 refs/pull/548/merge
20cc2c9db9c851a4633357ea5e07a330be5393e3 refs/pull/549/head
690cd5cbf6c9ef9460020a8e3e35c4e0375803dd refs/pull/550/head
4709bca377e4339831ade8e2148a45d72bd156af refs/pull/551/head
c943217a51d53f53c1ba50e064ce5144e1c9d833 refs/pull/553/head
20c4391a17552de6865d517bce97b56f2970e832 refs/pull/553/merge
358d52d9fddc6b4880a2e5bb6fd9fc8c28c356cf refs/pull/554/head
0abe63b1c65226d1d3f2a8987587d7a2ad267ce2 refs/pull/556/head
2e8bb608a34ba6131273976b4a8d951a73336301 refs/pull/556/merge
a2727e63fded042ee6acd9ff0ca4cff5922b19d3 refs/pull/558/head
2b3fb682aa007294ac6144777fcebd8935d36a4d refs/pull/559/head
2a24fe36db1a4b9dbb9119d2997a4aaa725a5afa refs/pull/560/head
1010cca03413198ba24df0a726c578b1cb14a4ab refs/pull/563/head
1010cca03413198ba24df0a726c578b1cb14a4ab refs/pull/566/head
e902f5361a4920cb6303fdf56219aa3aa601e2ad refs/pull/567/head
c409827d8310053b6136a2d8d69f399411bf08c5 refs/pull/568/head
3289691396af477244084619dc8c590eebde8307 refs/pull/568/merge
f4dfd693cf6d376412027e6a95bc0f6053d2c8ee refs/pull/569/head
cdb303ea9b82c3a9ef0a36ff2ec6ad785fe175d4 refs/pull/569/merge
2ca8b66e98aa1a8e968991a584ba30d43118ef51 refs/pull/570/head
08bce5d800b0992f0f413da895c0f53a7696dfb2 refs/pull/571/head
08bce5d800b0992f0f413da895c0f53a7696dfb2 refs/pull/573/head
820308613ef3c9aa82a163b2a38e90c28356b6c8 refs/pull/574/head
44b82c4ed39e3832293d25899fe93ddb7c8b0278 refs/pull/575/head
6ce7769d6a1cebf7358d860b71318e46c92cfa4d refs/pull/576/head
807a0606db837ff8179109fdbaa7f6f6f026c36b refs/pull/576/merge
d6b137ed0d5b2c91f2ac853ee4c4b4fa6659526d refs/pull/577/head
b0d29b610f3bafb619abed56510b6ba537a99313 refs/pull/577/merge
39ed1e89f3acb038a2eb6bcab171ece3acd0cc5c refs/pull/578/head
b8aeca7815d3f05199929bee8f210ed119261ad2 refs/pull/578/merge
d9b218b7e6fcc38f34951e93c6aaac644a890235 refs/pull/579/head
a796474be64009d257749ac3e22d97b1be44f72d refs/pull/581/head
fe98bd3bae459b530969097b0f610c8a60517335 refs/pull/582/head
1da5980b7f1ced65c96431e50e0ef84f1f5d0b72 refs/pull/583/head
37db996eb312a779cd1915b780fc16b7e82825ae refs/pull/584/head
7455f0f41dc8f04e1a73eaf109b6f26f67fdea90 refs/pull/585/head
d4a73251bc00e147bd4f8f6ba63b6220d837c4b8 refs/pull/586/head
7129353d2da01fb1d2175d856c210a08cd3d5078 refs/pull/587/head
66f62eb3920090e1e4857b9548e269c4fdc0b5f1 refs/pull/587/merge
7129353d2da01fb1d2175d856c210a08cd3d5078 refs/pull/588/head
3a6bd897083845b429a42473043e3ea8138ff45c refs/pull/589/head
3ccda712dd74bc7c7249f5fe64373978fb9ebc32 refs/pull/589/merge
4c91c47b7c9b3be377ac3395ffd737facb2041c4 refs/pull/590/head
9d0d2af677255e049b55e73491d88646ef7946b1 refs/pull/590/merge
16c504a722d158bdf11b4eb4df54126e25156051 refs/pull/591/head
db327d12086e5fdae6b4680a70a0d88852b83cd4 refs/pull/592/head
66cade3d45196f7434a549a017a9a64c954a6de2 refs/pull/594/head
6132c34e5a8ff3c13aaf38e3ea22deeb5afec118 refs/pull/595/head
18fdde6aca8a240f1ced8d86bcdbe5808fc56a54 refs/pull/597/head
46ebe0417fbeaabcaa33a8f9dfba7f294c006d9e refs/pull/597/merge
27bc345624c8e1e2a67c0d6bd656924dbf5dc40b refs/pull/598/head
41f068a969fea47234aec96b5366f948945984c8 refs/pull/599/head
ad100c7babeca775ea17b449c58c4969b83ee5a4 refs/pull/6/head
b0f711a4cc833ccf18c9ccb43f4c131918ab42ea refs/pull/6/merge
1c14916bcd664e9c842854c40d17699285d6a98c refs/pull/600/head
0e33b53ead10ea75d13cd6cd427cc1f0ec246408 refs/pull/603/head
2fb1865a12c9d10f986a4cfa13449eba9b03885e refs/pull/604/head
0a741648b73a46342879e122fd6c6d5222ebeca0 refs/pull/606/head
859817fac911cec23d98ba97d10b179c0ffcd87d refs/pull/606/merge
95c577590b3632480057cab9ff14d4b4c075c1d2 refs/pull/607/head
bd0f034b45a95108c5cc2de639b84b4e829d907a refs/pull/608/head
5c83b19ba4ee57c33fcec30952f13c46ff556373 refs/pull/610/head
5c83b19ba4ee57c33fcec30952f13c46ff556373 refs/pull/611/head
aff5ae54afc25ab8aac33a4c983e84d293432fb1 refs/pull/611/merge
1d3f8f38a41f39133039a489ec8f340487a042de refs/pull/612/head
c99f1240f40b5b5521dba5af43d3e4c7fa233894 refs/pull/613/head
c99f1240f40b5b5521dba5af43d3e4c7fa233894 refs/pull/614/head
e95b1b0af32efec03caab3550eb05de65c79ee1f refs/pull/614/merge
9bac376a84772ef6171c0452c6de5f0f28e6664a refs/pull/615/head
9bac376a84772ef6171c0452c6de5f0f28e6664a refs/pull/616/head
f4d3c14f959b2bed484ccfb081024a61a8c59b30 refs/pull/616/merge
9a9c3e9455ac401cb7311cb82698ed6ac85e3688 refs/pull/617/head
d5c7679baa68b90945f43c27b341a6691ae6e348 refs/pull/617/merge
f462dd1b8a5bf651f59b9a53aa9f0f1e456c8abd refs/pull/618/head
0693d344484ea2abb89f8c179597af2d97f2ae94 refs/pull/618/merge
fbfffc0ecadb24d4ee08878d3ed23e3c0e4881c9 refs/pull/624/head
b383ee811103f9c446158831b18fa0b580d6abaa refs/pull/626/head
8831c09c6ae84079028a4a6ce186cf0404df89e6 refs/pull/628/head
8831c09c6ae84079028a4a6ce186cf0404df89e6 refs/pull/629/head
e94d81e300ef6fb28e1d8d59e9f960638d9bb740 refs/pull/629/merge
c66a5adadd9152ca94a8e7a8ce7db33196e9647f refs/pull/63/head
66cc0e854426f76ac24684889aa2fab14d0c0cf6 refs/pull/63/merge
adb03c520dd6e5b422384f9f07a60045fe64d0cb refs/pull/630/head
dcc798a23010fd3e1a6f606474bcb0fadf9c9e19 refs/pull/631/head
dcc798a23010fd3e1a6f606474bcb0fadf9c9e19 refs/pull/632/head
633139434e7e40609f04e9adead578062540e63f refs/pull/632/merge
1a4007977bea77d835b50763ef2d3de59956025c refs/pull/633/head
11afa6da15a485e3f50f3374d9e789c041d46872 refs/pull/634/head
1a4007977bea77d835b50763ef2d3de59956025c refs/pull/635/head
f9844f07dbc34c41c82aa4a7a7aa281dc054da37 refs/pull/635/merge
71f7b31b6f7297605a05b2287f411731d1b7f621 refs/pull/637/head
1614a77dab3e117bbe02817403d0895d66a61be9 refs/pull/638/head
fe40a7cb8dbb4d4d1953ae92c015b65710d155bf refs/pull/638/merge
442f78119cb474988831f44b2d8c6dc26c4862e5 refs/pull/64/head
d46ef28460df307a1793207fb92fe69464904c84 refs/pull/640/head
13fdbf030eb3997afd3270135bcdd9a1db81a931 refs/pull/641/head
2c429f6d0707dc1f675c5a61742101874ae20568 refs/pull/642/head
ae2c371c4e4ec06b3fdcf951dee96dbf910288d2 refs/pull/643/head
9f20389986374b14a56d48160be6ecc59a732368 refs/pull/644/head
a6dd121b12ecd2769255819f9d03cbd7866e48ab refs/pull/645/head
0a12d450bcc4dc323c666ad60b78b8814e693a11 refs/pull/646/head
0a12d450bcc4dc323c666ad60b78b8814e693a11 refs/pull/647/head
040c55e7510607907dee0622a5c5aceaddd955dd refs/pull/647/merge
446ff60b040ae1c00c58e1a77eb27c487dfaf0f1 refs/pull/648/head
446ff60b040ae1c00c58e1a77eb27c487dfaf0f1 refs/pull/649/head
13bc81f484199d90644d4f29c7ac172803169bbc refs/pull/649/merge
0d63d62f4537e67119cbd057d9264cb760452079 refs/pull/651/head
2ecf68fbc55bd696faea6bcec897000f4f9c9471 refs/pull/659/head
866c5d640b084edf773704fbdc4b81c62d7c084e refs/pull/659/merge
672137a316d9f60b66ea720c2c3d3f0cd0d48fb4 refs/pull/660/head
fdd478ec688e9dd6b5f7a6a11c9766a15ce8e6e4 refs/pull/664/head
34dcd8048b892ccd4652132d0cb8389caf4f2904 refs/pull/667/head
34dcd8048b892ccd4652132d0cb8389caf4f2904 refs/pull/668/head
6070edb7997b67e7ac364595070b505fbf576ff4 refs/pull/668/merge
0fe300d35d539cdda1125f7b093a91b4a4e6f5d9 refs/pull/671/head
5b6bc1b00a307a10c92b33eb35edf3d05b0e4bf2 refs/pull/672/head
84e8835b621ca1d44b0871a6d2336a5b3e5e9a9a refs/pull/678/head
29a6cf1f608ea9c19142652a752a621e7be0dbfe refs/pull/679/head
a4b84c9e566fbb8c2220bfe541d4556e4c3970f3 refs/pull/680/head
651d0c06bcb81d94176c5b730331d9ab3b68784c refs/pull/681/head
ef84097e41e44a1fe645a8e39b40d44f589e0c1f refs/pull/682/head
7aad69ff826719bb14a0c72629fb001fa0774a75 refs/pull/683/head
6afdc8cbb57495473838e75dbf9ffb4eb72b0d7c refs/pull/686/head
45a7f90e8f45169efdce14a5de0018e57b63b388 refs/pull/687/head
6bfd28dcc2d088356d2e0598c1d524a0652c6c00 refs/pull/688/head
d92cb4d2133a38cc0ae3c78f13f002fc124f9374 refs/pull/689/head
9c2389232adbda39c004a9cc07ab72dda0cf4338 refs/pull/692/head
1d9ff00b31e2f7985111446d435ed43201a5c630 refs/pull/693/head
1d0de0bb869ae5377652d0f59d2954f71866ee8e refs/pull/694/head
9bb346ba9304a433a0414030f978f4f9fcc7f554 refs/pull/697/head
645ed23be6d802afd7e51504871f0936e86afdd2 refs/pull/698/head
749083a4501262c19cb4ce8d8fe08e4a8b8b09b9 refs/pull/7/head
cee1531f884b3ea3ada1af8304a2ead1e38f3b89 refs/pull/7/merge
c61c2404addc1a9e81a3a99798a92c3b214c60aa refs/pull/701/head
96d037ef98a85e6cd5b7cefb6278143fa3ecf998 refs/pull/704/head
dbd644d7f5ca46eef2279aeea3e65aab217f503d refs/pull/707/head
b9dba46fb3b048d254146ac75e90d999e3433f99 refs/pull/71/head
9298004d869126f3923653045859e0632d3569ce refs/pull/710/head
02ee62acadd74973da9834cb67d1e1ab6f502ccc refs/pull/711/head
c5b113743ed371c1fb85af18e1a1512c3815e623 refs/pull/712/head
8197a67f87f7463d41ce1d08cb403822e2888659 refs/pull/713/head
4ef597da924df0f10166b7eb6b23ee592addc7af refs/pull/714/head
2227652011fa5efbf6288b6e91cba4bc76b9ab77 refs/pull/716/head
ec63e458415043fe5e63fa6ef9de26456c910544 refs/pull/719/head
00481ee9a97025e8e2acd7303d080af1948f7980 refs/pull/72/head
a09967601b7c365d499172812af95c054ee7f658 refs/pull/720/head
0b86fd00c75059c197feaa60fdb95cdef2220f73 refs/pull/721/head
98855f8468fdeeab9aca3f7f7cc038466eab0a0f refs/pull/722/head
7d5f4f4c47c7e03233dbbccf77376d8049bab501 refs/pull/723/head
3b95d1357dc7c17594208d7d1c68fbf3d02799bb refs/pull/726/head
55ca1be8bb69481e3677ef109f8dd32eee20c684 refs/pull/727/head
6dee7b214f9fd640476436d9b23a75eaf6119426 refs/pull/728/head
d603180b0e243b6363d370734f78d4ae82decbae refs/pull/731/head
8e1641868102f7219f9c6368217dcca2f3b86e86 refs/pull/733/head
73e83b40d6d289c25eef12667bfdcf1417fe65cf refs/pull/734/head
51c48ab02702f649e271b7ed857af0fcae7003ad refs/pull/735/head
6e07b5f22ba81237e719571f9836a227f1505389 refs/pull/736/head
e359285e4f6882b4d1d7972270ab7eea99dcf921 refs/pull/739/head
59dd72b525caa7e0ac7b224b136e8167f8d48bb0 refs/pull/740/head
cd1e4219dd8384127b0a5bec2a60700b8e9125fe refs/pull/741/head
7ec6dde591d3245fb9a85cee3081ff5f2752e58e refs/pull/742/head
645cd33effde8b038432accec60b24ae9405c6d6 refs/pull/743/head
6cbd000fe5690d9bcbdd0dad2525be3a8c671e0f refs/pull/745/head
6350f2d69f40570fdbcc75482b8723e4b7138e34 refs/pull/746/head
5b205fbcbaaf842d8da1929ea029bbb946a7f260 refs/pull/750/head
f65de108ac86fb8e3f1342803e3e092ee81094bf refs/pull/751/head
09dd971a36619bacdaff918e53c85dee0a20dc0f refs/pull/752/head
7f5bb4e5f06ab94d6be5d861de0532e4dddcc8b0 refs/pull/755/head
b0c269aa9ee99dd5e2cb896f6563576d265201da refs/pull/758/head
38beb1875f46714f72308d5811b4fc1e8d294f67 refs/pull/760/head
1ea41d5e920f1d3c983f73b97c9b9520faf7b247 refs/pull/761/head
5a37575ec8150dd95524daaac3871c76657101dc refs/pull/770/head
02c29a3f8c05c555e398a3917a15bfcf9b469f4f refs/pull/771/head
2d14e2fd57fd133535bc0103d0ba46ffdbb27e23 refs/pull/772/head
f6b43b703c58646ccde5f13d6ac29ca437be5883 refs/pull/777/head
b3e18fe70e1c7fc2ef08299f82834af334fcf18b refs/pull/782/head
b3e18fe70e1c7fc2ef08299f82834af334fcf18b refs/pull/783/head
4170f22c834489a3c1b20aa163e5f14092ce20c9 refs/pull/784/head
23226103ed65aad5649020a2ef989881b3d5c5e5 refs/pull/785/head
c5841f1999efb5f3aaad95c22184d1d24fc3276c refs/pull/786/head
e0606cf195e0387240689b3769858b3b0e62668e refs/pull/787/head
8df3546b0bd89dce16f82f37437a149638efde3d refs/pull/788/head
89a48db65c8b822a7d1e960ef667258ac88f1acd refs/pull/789/head
21c0473b4520fd0c71ebdeeb48a2c3071ce02f3a refs/pull/790/head
0a1db79cc0e0a55aa94492dcf60db4a7b33f2a36 refs/pull/791/head
d02f2bb869741c93ab1433521ba9a03f5ae878e7 refs/pull/792/head
8d5be0a4ba2e6baf252a15d1e796ed9e5bb708fb refs/pull/793/head
be6b359888aeb0631baa7656dd306d49bf595545 refs/pull/795/head
b289f1c8ccad8dd79e53cb8a65d54fbc21810ec3 refs/pull/796/head
3019c0e88cf874cdd903ce06795eb30ae0f9d705 refs/pull/797/head
ea8adc3d5722471ebbc811999333bbcafcf490e1 refs/pull/798/head
c091f9679502f5a7f6d90f255acb29a569b0c4a2 refs/pull/799/head
99bbea04341fb046f33933fd81aee5f99a7d2b08 refs/pull/800/head
bb1fec36445b2d96ca32ac11efe07a917b3f5e5a refs/pull/801/head
8f06bed3f4e175eb83e2abfe51d9781ce4581afb refs/pull/803/head
a5e2125ae0c61e910a8c3f5c2ab7cdcb97384589 refs/pull/804/head
bc5f0454defad035c5c24c85fff4ca26d04a5757 refs/pull/805/head
4faab76ca6e8f5166e947a0c461ee7e3ed8c5f83 refs/pull/806/head
122eac9fc43eaac8c3a9a69a57265122f6cb6408 refs/pull/808/head
e277a2f60e0ebe796f19c26007c8699af88b4de6 refs/pull/809/head
34903b493f40b77f46eecc839b256c791d3f6076 refs/pull/81/head
d35d9d6d378dda6b42a99b32407e6d9fb90d6041 refs/pull/810/head
ae528ee7aaff065f6e20a6a2b5aaacf73bd68488 refs/pull/811/head
ae528ee7aaff065f6e20a6a2b5aaacf73bd68488 refs/pull/812/head
2383fb0eb192e44b222c2a5fdca87cc3fbeaca90 refs/pull/813/head
b55772a129a13cc1df65954c2b3cd96278bcd858 refs/pull/814/head
b98e7a834812443b0f43338eace14ee456b7cbf0 refs/pull/819/head
237fe4864b4775564c113122219ad38d29a644bf refs/pull/82/head
0b4a40e06cc6764c7f45260981dd16d722f0c789 refs/pull/824/head
ed462daa1177ab97e64bd962294b242ffd5445aa refs/pull/825/head
1c0774b2600d112ce8246c5482e0713cbad2db1a refs/pull/826/head
a676319e5a9c525d7aa8a0fe9ae25eef96f65ea2 refs/pull/827/head
9fd4090a07d66fae2452ddf120c51bc62e91188b refs/pull/83/head
376b316e254f266af5546265be1de7610191219e refs/pull/831/head
6c38a4fa8c4f6f7fc50701b049808bdb9adddb7b refs/pull/834/head
7978b06a54f66499324d4ee3c009c1a1a29fbfa1 refs/pull/835/head
3677bc23f796363bae84869c369f825a9148924e refs/pull/838/head
201b7ec0468cfa96ae87484306b3179778ae11c5 refs/pull/84/head
bbc97390fea52fdc2f4555b8be2a33b2800fe4e2 refs/pull/84/merge
cfdca22583f3d07854959c3e46032b3024bcd16c refs/pull/840/head
8a539d7a64dd9a51b3ecbf2d9b5f649ca3083251 refs/pull/842/head
8c1321635f95f7864a58d7eaf5ab06b2ae73cd3d refs/pull/846/head
abc7e57c45033239e6bf115e1fb02e48c9c0c803 refs/pull/849/head
5373dfceaab57db932cfcda36e86595434727dec refs/pull/852/head
3681077a9b546fbe5bde257a6197f927cfe22320 refs/pull/858/head
df240f950d5ec7ec84e34d1c2ac2674c9f138503 refs/pull/859/head
b658e11c9f42fa3403d172163493d8c6602aa8d8 refs/pull/864/head
a4e59793dd1001e2736550ed7fbff1778d48e6d4 refs/pull/865/head
94c0b0ad3864f4b4be3d7381d2e13814b212d55b refs/pull/866/head
a43933353e5088d52f19985bac4b43b168c08190 refs/pull/871/head
6e7b457f1d162097397a6e1a1d26d175c4d3357f refs/pull/873/head
d405b217cf5edc795a92101d161defa46614ab86 refs/pull/878/head
25a637b7a851fa1e3993e4a658e47aac92c91da1 refs/pull/889/head
7f8021c6a0cce442161d68bbc087307ae544476a refs/pull/892/head
037317d134f7771bf8d43fe80f78b13dcb8678d5 refs/pull/895/head
ff89c6ae1ffa9817dbb6994363f24cd391b8a1fc refs/pull/907/head
7feb6ad39c5dbecaa9b0802fa31ad1f31e7b3bc7 refs/pull/911/head
faef8a4bf4b32795bbeb6d7053151c298c7e0003 refs/pull/924/head
a2b06428cdd80fb3efcc0d7cd0b2eaf0709044fc refs/pull/925/head
e7dd9a5f77ea45a1f7afb3d7ef709dfea370ca23 refs/pull/927/head
57b59a49bfed4d6cd5ce3292128acb9633ed5002 refs/pull/929/head
20d79b945d4d15d8d9055c7fe066d2d5a9a249ab refs/pull/932/head
f3f3d60f93b49433e1064b82a2b8ff6768376dbd refs/pull/949/head
7599a760157032518f14bf1386e213f95b454ea3 refs/pull/955/head
b8082ca1fa98efb647e509cd3581c9d6e561029b refs/pull/96/head
653a4d4259f93dc6183f037b509466010f6e2f05 refs/pull/964/head
45ec28ca00adb6932714ca2a1317a08748cf2b0f refs/pull/973/head
e752bbd0a6e79a14549c557613640dc21e55972e refs/remotes/su8/su8-fixes-191
8e29357bbc7a8915b62aa7b1b88d899a70ac310f refs/tags/1.11.0
^c1059030cf729a1cebaa55fffba81c793a276d5e
7dbb26be48a343cc62ad2e1ada29e834ecc22d02 refs/tags/1.6.2_pre1347
^1a35a68bcaac6c278ffdd17b2a9b4fd2c42d3a28
51a185f0c33c72e20d965d8483e1e3fddc813caf refs/tags/1.6.2_pre1355
^cd49afbd193b40c2c9822607a1ec5c12d6758f82
4413958973c0c64522b0b29621ae9b683ff34411 refs/tags/1.6.2_pre1380
^f92978c5e5035b70d44a98fc49328d8e3df32316
0c7f5f5eadb499626da1eea9ce6a2da10877f319 refs/tags/1.7.0
^71835254d689ad19b5d7fae8626076ca5c0ad238
da91f3ec1ba43d47ae8f808718ad198a189be56a refs/tags/1.7.0_rc1
^ca657ad8e6d93ae9241918002662c158f93a3035
a507421f157758f99ed101b1efe97e5bb44c8fb2 refs/tags/1.7.0_rc2
^bc98d7ad76f00321f3fce8ed14c3595ce2c65749
9a296709927394f62cf51b191ac2a957876b3a73 refs/tags/1.7.1
^d036e2fcc20e76d11d4439af0e4efec2355eb320
be2c16ff725399fe1cbf794770b82e709d9fe16f refs/tags/1.7.1.1
^00657b64b2152eb40b494515f2cc5430f8245754
e80b3a6cf337ca7c8c71ef3d0d33dd9508adbe92 refs/tags/1.7.1_pre1466
^68ea7a78590ad9b7a6ce7ea2ab1b7eeb395154b5
a9fcc3c5f9988ce6e171909277aa3a24dc8f7758 refs/tags/1.7.1_rc1
^c9dd36c0be9d979fbe28584e65e3b17b173c5a73
c48a43f4777e61a77979fb947a1f4612f4c4a9a6 refs/tags/1.7.1_rc2
^24bf4ace92d4644f52886825bdda697e52f45c18
0ceee2e8f214edd04d3c6671417183b0fa0c3342 refs/tags/1.7.1_rc3
^1036bba7952d478f877cb291c5cc707c55e70ef9
e0d13328f6a857501b4e00e18c56da86b0e66591 refs/tags/1.7.1_rc4
^652b98a5cbe4f117daa2fb50cd112fe2f6f0e571
2a6855cb446963a01cac7dbbf14ebc83cf0114e8 refs/tags/1.7.2
^5acb2ace7e2455b35744a1f668cd47f52d4b4a4f
f07c69deb49d9644da0288702db6527c845d55f0 refs/tags/1.7.2_pre1678
^e995be8cf81a52817af555d07beb55fdc86bb40d
ff4b748c58e8224d135b8244505bd73bc24012ca refs/tags/1.7.2_pre1823
^613d302e643e49404b40912835966c02b64f2d87
d3621f6d773931a8120bd0aebf1c2ffed1f468ad refs/tags/1.7.2_rc1
^ba4ca41779034dbf29217056d5e0743719ce3bad
a718fd1a30b41e08e2a713ba1e958cfaa84640d1 refs/tags/1.7.2_rc2
^5c96a723a329d85f3aecccedb7ab12ba000c7f88
30e6449f278cc6b3f8e942bd25b02a5ab74729c1 refs/tags/1.7.2_rc3
^cdedec93c4d90c9af54acd9f7c5754334d630886
d2ced311a769a6a19d3378d7be9f37239f311d91 refs/tags/1.8.0
^6c72c9352369fbd38401b6afe65a9a1f5b6d8554
2a18130507912e26063fe266ea4cb9bc15be94d9 refs/tags/1.8.0_rc1
^909c2903c2e765a2e26b2aedfd2444d38710ed35
af986734b498f330a269ebd37b908bddc391656d refs/tags/1.8.0_rc2
^f5363b6539d7bd4928437823d3ebc81b7f7502d5
547ed3767879a0f2d108fbdce0425c2e64452e32 refs/tags/1.8.1
^0b3fbed04520af4b228aa42723e02b5831f1d0c2
d6b821c0d467cf52124ff7c8253edec34962378d refs/tags/1.9.0
^04a0c8850f70c4decdd4c5de8341f9f37514740c
9a15e527cad5a5dfe87f597088f377f3bc32a051 refs/tags/1.999
^ca9acc13c06234875059c7b5b97af35205978976
8a4eb2655dcb5c0ccd8d154553a6568ef5e1b435 refs/tags/v1.10.0
138c86449d1f540105b46a3fa0d206edc1b33bb4 refs/tags/v1.10.0-rc1
15662beb39de2a369588e0938f7c8c0353058a28 refs/tags/v1.10.1
c0c60b16753978becf137d537465f31de7651909 refs/tags/v1.10.2
^8dda4c3995cdfb42ae830811eae0001db0db5df3
f2a614b91426bdb58d8a2608fa0f77df77f24ee9 refs/tags/v1.10.3
^6e061100651aa626ffcb449ad61b13b5805d37a7
1585b7959b9b40313e036e94c04e657076c7653e refs/tags/v1.10.4
^3b4b9abd979fb9c1c24facf223d9be8cb8fc0f87
4f367470fe2a5f87586f2f96fd681f35958855d6 refs/tags/v1.10.5
^4cd04f00f9cd6cb6b5bcb9e398e783787fced8e8
b5dd94047858a8d3e348d058cff266e055aae528 refs/tags/v1.10.6
^e94f04949cefb3ec48bd163ffc011d98ac92ba6c
fcae93e9a6e232ac6fed63c36d0e5fd34bf3adff refs/tags/v1.10.7
^d97f4dfd8a4f395ef65abfd67d5a758aadb46042
79e581c7b30a4f621d058ece89ea73957f9a512a refs/tags/v1.10.8
^29a1688db609f6e58ddb8810d13f00e957e92ea4
fcc1d05d9f064af3f60881d48c07bddb73beeda4 refs/tags/v1.11.0
^c1059030cf729a1cebaa55fffba81c793a276d5e
bf6b3036461a3ffea15e795b82dcfbc044064d2d refs/tags/v1.11.1
^7cec37e0099f44382590d65d628c0b04283548dd
cd3cdeaf028a09cb7021566103a0c51fe30f8106 refs/tags/v1.11.2
^6a7dc0cd6550d397fde8d5873b66e084b70befe5
0d611b42733161659498f76e1b01d07b8eb4aebb refs/tags/v1.11.3
^89316a620f6d0705ef48ea514fc34a0d58cc6108
5136e21a0684f7b7381cf2299012a5ac037123da refs/tags/v1.11.4
^bfc43cfe62fc3e3ce87edc9b038bad9c45641fbb
dc4aa8feaa6736ac966f6a0e0ad165d32d298e61 refs/tags/v1.11.5
^c6b9d2edb505e0174c4d298248fa156b9d5886bf
ccaf4e61262905be06491b167f50a4ba425e3670 refs/tags/v1.11.6
^1c599a2752ba4e978035d31c8d8976f58f808376
32934d42a6a2f3f3f4f441088eea79765eff65cf refs/tags/v1.12.0
^4b88e34b6c9a4161ac90662ad085e5c3b3a9d0d2
994b057a38638a2344f13866e40d24c2e800b762 refs/tags/v1.12.1
^7f84662c2c75dd939b27ce7d9fff95bc1070c1e0
52e5aa53b4c76973519a770949dc8bdca0145325 refs/tags/v1.12.2
^7fb40fb5f2369fb1f99eee01f9d70314cda03d43
0f216e8f0247fc0a08cf496b23581867ff51580d refs/tags/v1.13.1
^9654dcca69cd9731438f5cb2e78ac262fc95eb0a
0fe9a15572c094c232554a73356ef089039f4bb2 refs/tags/v1.14.0
^5879954cc05813ee16a1d615a1bb131cf834036f
b85748b6cea0ac0f0e165201ed5b05e60e368fb9 refs/tags/v1.15.0
^70d7d5c796e3e84e674705ffc6aaf7a0d6c5b109
ae9dd8124e62c9942c7eddd55f5a1e3864bfcb94 refs/tags/v1.16.0
^5f0ed0d72d643bcf8711ec3fe23cdfaf1ecd6855
061eda9be36d38b49fc8608f5389c7de0223e950 refs/tags/v1.16.1
^dbe66565c9c8f4fb4bef1e76d2c6d4c36a56b58b
8640405583f1f01831c4fae01b7c871f1a7f03b8 refs/tags/v1.17.0
^5fb9dfe10e5c5f04fc138ccf3d735f9d38c9f173

View File

@ -15,3 +15,4 @@ docbook-xsl
perl-xml-libxml
perl-xml-sax-expat
git
python-pyalsa

View File

@ -1,11 +0,0 @@
diff -bur conky-1.10.6-orig/src/luamm.hh conky-1.10.6/src/luamm.hh
--- conky-1.10.6-orig/src/luamm.hh 2016-12-04 17:13:57.000000000 +0200
+++ conky-1.10.6/src/luamm.hh 2017-05-31 20:05:59.000000000 +0300
@@ -28,6 +28,7 @@
#include <exception>
#include <stdexcept>
#include <string>
+#include <functional>
#include <lua.hpp>

View File

@ -1,10 +0,0 @@
#!/usr/bin/env bash
namcap PKGBUILD && makepkg --printsrcinfo > .SRCINFO || exit 1
git add . || exit 1 # PKGBUILD prepare4uploadpkg.sh .SRCINFO
git commit -am "New version" || exit 1
git push --set-upstream origin master || exit 1
read -p "Press [Enter] key to exit..."
exit $?

112
conky11/PKGBUILD Normal file
View File

@ -0,0 +1,112 @@
#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
#-----------------------------------------| DESCRIPTION |---------------------------------------
# Based on AUR pkgname=conky-lua-archers
# Maintainer : Yiannis A Ginis <drxspace[at]gmail[dot]com>
# Contributor : Spyros Stathopoulos <foucault.online[at]gmail[dot]com>
# Contributor : Chris Sakalis <chrissakalis[at]gmail[dot]com>
pkgname=conky11
_pkgname=conky
pkgver=1.11.3
pkgrel=01
pkgdesc="A free, light-weight system monitor for X with lua enabled for Arch based distros - minimalist Joborun version"
arch=(x86_64)
url="https://github.com/brndnmtthws/conky"
replaces=('torsmo' 'conky-lua' 'conky-lua-arch' 'conky-lua-archers-git' 'conky')
provides=("conky=${pkgver}")
conflicts=('conky-lua' 'conky-lua-arch' 'conky-lua-nv' 'conky-lua-archers-git' 'conky-lua-archers' 'conky')
## Note: after discovering the following running error on our previous edition
## 'E: pyAlsaAudio in not available'
## we decided to add 'python-pyalsa' as make and run dependency
## the error is gone now
## ... end of note
depends=(
'alsa-lib'
'cairo'
'curl'
'glib2'
'imlib2'
'librsvg'
'libxdamage'
'libxft'
'libxinerama'
'libxml2'
# 'libxnvctrl'
'lua'
'lua51'
'python-pyalsa'
'tolua++'
# 'wireless_tools'
)
makedepends=(
'cmake'
'docbook2x'
'docbook-xml'
'docbook-xsl'
'perl-xml-libxml'
'perl-xml-sax-expat'
'python-pyalsa'
)
source=("https://github.com/brndnmtthws/${_pkgname}/archive/v${pkgver}.tar.gz")
options=('strip' '!debug' '!emptydirs')
prepare() {
cd "${srcdir}/${_pkgname}-${pkgver}"
}
build() {
cd ${srcdir}/${_pkgname}-${pkgver}
cmake \
-D CMAKE_BUILD_TYPE=MinSizeRel \
-D CMAKE_INSTALL_PREFIX=/usr \
-D MAINTAINER_MODE=OFF \
-D BUILD_BUILTIN_CONFIG=ON \
-D BUILD_APCUPSD=OFF \
-D BUILD_ARGB=ON \
-D BUILD_CURL=ON \
-D BUILD_I18N=OFF \
-D BUILD_IBM=OFF \
-D BUILD_IMLIB2=ON \
-D BUILD_IOSTATS=OFF \
-D BUILD_IPV6=OFF \
-D BUILD_LUA_CAIRO=ON \
-D BUILD_LUA_IMLIB2=ON \
-D BUILD_LUA_RSVG=ON \
-D BUILD_MOC=OFF \
-D BUILD_MPD=OFF \
-D BUILD_NVIDIA=OFF \
-D BUILD_OLD_CONFIG=ON \
-D BUILD_PULSEAUDIO=OFF \
-D BUILD_WLAN=OFF \
-D BUILD_X11=ON \
-D BUILD_XDAMAGE=ON \
-D BUILD_XDBE=ON \
-D BUILD_XFT=ON \
-D BUILD_XINERAMA=ON \
-D DEFAULTNETDEV=eth0 \
-D OWN_WINDOW=ON
make
}
package() {
cd ${srcdir}/${_pkgname}-${pkgver}
make DESTDIR=${pkgdir} install
install -D -m644 LICENSE ${pkgdir}/usr/share/licenses/${_pkgname}/LICENSE
install -D -m644 LICENSE.BSD ${pkgdir}/usr/share/licenses/${_pkgname}/LICENSE.BSD
install -D -m644 extras/vim/syntax/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/syntax/conkyrc.vim
install -D -m644 extras/vim/ftdetect/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/ftdetect/conkyrc.vim
}
#---- license gpg-key sha256sums ----
license=('GPL3' 'BSD')
sha256sums=(0140e749537d4d05bf33fbac436e54756faa26021e16f2bca418e9eeea724eb4) # v1.11.3.tar.gz

1
conky11/clean Normal file
View File

@ -0,0 +1 @@
rm -rvf {src,pkg,v1.*gz}

18
conky11/deps Normal file
View File

@ -0,0 +1,18 @@
alsa-lib
cairo
imlib2
librsvg
libxdamage
libxft
libxinerama
lua
lua51
tolua++
cmake
docbook2x
docbook-xml
docbook-xsl
perl-xml-libxml
perl-xml-sax-expat
git
python-pyalsa

6
conky11/time Normal file
View File

@ -0,0 +1,6 @@
real 1m6.300s
user 0m51.440s
sys 0m4.274s

14
cups-no-dbus/failed.tests Normal file
View File

@ -0,0 +1,14 @@
of CUPS. See https://github.com/OpenPrinting/cups/issues/103
PASS: 0 notice messages.
PASS: 6488 info messages.
PASS: 100674 debug messages.
PASS: 241309 debug2 messages.
Copied log file "access_log-2022-11-22-make" to test directory.
Copied log file "debug_log-2022-11-22-make" to test directory.
Copied log file "error_log-2022-11-22-make" to test directory.
Copied log file "page_log-2022-11-22-make" to test directory.
Copied report file "cups-str-2022-11-22-make.html" to test directory.
5 tests failed.
make: *** [Makefile:248: check] Error 1

131
cyrus-sasl/PKGBUILD-2.1.27 Normal file
View File

@ -0,0 +1,131 @@
#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
# Website : https://pozol.eu
#-----------------------------------------| DESCRIPTION |---------------------------------------
# This package spans multiple repositories.
# Always build from cyrus-sasl/trunk and merge changes to libsasl/trunk.
# NOTE: upgrade cyrus-sasl in tandem with core/libsasl
# As one PKGBUILD can (currently) not provide packages for several
# repositories, libsasl and the rest of cyrus-sasl are provided separately
# (else this would require mariadb and postgresql in [core])
pkgbase=cyrus-sasl
pkgname=(cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-ldap cyrus-sasl-sql)
pkgver=2.1.28
pkgrel=01
pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library"
arch=('x86_64')
url="https://www.cyrusimap.org/sasl/"
options=('!makeflags')
makedepends=('postgresql-libs' 'mariadb-libs' 'libldap' 'krb5' 'openssl' 'sqlite')
source=(https://github.com/cyrusimap/$pkgbase/releases/download/$pkgbase-$pkgver/$pkgbase-$pkgver.tar.gz{,.sig}
saslauthd.conf.d
tmpfiles.conf)
prepare() {
cd $pkgbase-$pkgver
autoreconf -fiv
}
build() {
cd $pkgbase-$pkgver
./configure --prefix=/usr \
--disable-krb4 \
--disable-macos-framework \
--disable-otp \
--disable-passdss \
--disable-srp \
--disable-srp-setpass \
--disable-static \
--enable-alwaystrue \
--enable-anon \
--enable-auth-sasldb \
--enable-checkapop \
--enable-cram \
--enable-digest \
--enable-gssapi \
--enable-ldapdb \
--enable-login \
--enable-ntlm \
--enable-plain \
--enable-shared \
--enable-sql \
--infodir=/usr/share/info \
--mandir=/usr/share/man \
--sbin=/usr/bin \
--sysconfdir=/etc \
--with-dblib=gdbm \
--with-devrandom=/dev/urandom \
--with-configdir=/etc/sasl2:/etc/sasl:/usr/lib/sasl2 \
--with-ldap \
--with-mysql=/usr \
--with-pam \
--with-pgsql=/usr/lib \
--with-saslauthd=/var/run/saslauthd \
--with-sqlite3=/usr/lib
# prevent excessive overlinking by libtool
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
check() {
make -k check -C $pkgbase-$pkgver
}
package_cyrus-sasl() {
depends=(gdbm libgdbm.so glibc krb5 libkrb5.so libldap libsasl=$pkgver openssl pam libpam.so)
pkgdesc="Cyrus saslauthd SASL authentication daemon"
backup=(etc/conf.d/saslauthd)
make DESTDIR="$pkgdir" install -C $pkgbase-$pkgver/saslauthd
make DESTDIR="$pkgdir" install-data-local -C $pkgbase-$pkgver/saslauthd
install -vDm 644 $pkgbase-$pkgver/COPYING -t "$pkgdir/usr/share/licenses/$pkgname/"
install -vDm 644 saslauthd.conf.d "$pkgdir/etc/conf.d/saslauthd"
# install -vDm 644 saslauthd.service -t "$pkgdir/usr/lib/systemd/system/"
install -vDm 644 tmpfiles.conf "$pkgdir/usr/lib/tmpfiles.d/saslauthd.conf"
}
package_cyrus-sasl-gssapi() {
pkgdesc="GSSAPI authentication mechanism for Cyrus SASL"
depends=(glibc krb5 libgssapi_krb5.so libsasl=$pkgver)
replaces=('cyrus-sasl-plugins')
install -vdm 755 "$pkgdir/usr/lib/sasl2"
cp -av $pkgbase-$pkgver/plugins/.libs/libgs{,sapiv}2.so* "$pkgdir/usr/lib/sasl2/"
install -vDm 644 $pkgbase-$pkgver/COPYING -t "$pkgdir/usr/share/licenses/$pkgname/"
}
package_cyrus-sasl-ldap() {
pkgdesc="ldapdb auxprop module for Cyrus SASL"
depends=(glibc libldap libsasl=$pkgver)
replaces=('cyrus-sasl-plugins')
install -vdm 755 "$pkgdir/usr/lib/sasl2"
cp -av $pkgbase-$pkgver/plugins/.libs/libldapdb.so* "$pkgdir/usr/lib/sasl2/"
install -vDm 644 $pkgbase-$pkgver/COPYING -t "$pkgdir/usr/share/licenses/$pkgname/"
}
package_cyrus-sasl-sql() {
pkgdesc="SQL auxprop module for Cyrus SASL"
depends=(libsasl=$pkgver mariadb-libs libmariadb.so postgresql-libs libpq.so sqlite)
replaces=('cyrus-sasl-plugins')
install -vdm 755 "$pkgdir/usr/lib/sasl2"
cp -av $pkgbase-$pkgver/plugins/.libs/libsql.so* "$pkgdir/usr/lib/sasl2/"
install -vDm 644 $pkgbase-$pkgver/COPYING -t "$pkgdir/usr/share/licenses/$pkgname/"
}
#---- license gpg-key sha256sums ----
license=('custom')
validpgpkeys=(829F339F8C296FE80F409D93E3D7C118C7B9F46A # Partha Susarla <mail@spartha.org>
DEA1999F0CDB1AAEBA001E0DBEE3E3B4D2F06546) # Quanah Gibson-Mount <quanah@fast-mail.org>
sha256sums=(7ccfc6abd01ed67c1a0924b353e526f1b766b21f42d4562ee635a8ebfc5bb38c # cyrus-sasl-2.1.28.tar.gz
e6169548f42234eb2b1af9719415016a57116835b8ea494596f52743b49971fd # cyrus-sasl-2.1.28.tar.gz.sig
fa57b4f374ae633633091b1c8b44e1e0be814e4fddbfa75f16eb3dd1f16b8640 # saslauthd.conf.d
16ca1a4185847b0c6c70ef6c7c314cb466f698d3ed02185a5f50e8179822f024) # tmpfiles.conf

View File

@ -0,0 +1,131 @@
# Maintainer: David Runge <dvzrv@archlinux.org>
# Contributor: Jan de Groot <jgc@archlinux.org>
# NOTE: upgrade cyrus-sasl in tandem with core/libsasl
# As one PKGBUILD can (currently) not provide packages for several
# repositories, libsasl and the rest of cyrus-sasl are provided separately
# (else this would require mariadb and postgresql in [core])
pkgbase=cyrus-sasl
pkgname=(cyrus-sasl cyrus-sasl-gssapi cyrus-sasl-ldap cyrus-sasl-sql)
pkgver=2.1.28
pkgrel=1
pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library"
arch=(x86_64)
url="https://www.cyrusimap.org/sasl/"
license=(custom)
makedepends=(gdbm glibc krb5 libldap libsasl=$pkgver mariadb-libs openssl pam postgresql-libs sqlite)
options=(debug)
source=(
https://github.com/cyrusimap/$pkgbase/releases/download/$pkgbase-$pkgver/$pkgbase-$pkgver.tar.gz{,.sig}
saslauthd.service
saslauthd.conf.d
tmpfiles.conf
)
sha512sums=('db15af9079758a9f385457a79390c8a7cd7ea666573dace8bf4fb01bb4b49037538d67285727d6a70ad799d2e2318f265c9372e2427de9371d626a1959dd6f78'
'SKIP'
'99573a52c0558d34548cc14e2fc3d95c4b7dc11e0b85f6aba31b1a98d2937d559fed7bb268b88f7ebf929c70e987901b9fe7d406eb74c088628b403a45013197'
'e99e2da452d2d5b9c0fc7ef10a844f5aa80f20fe5d5778666e450b5e6eb183876322592ae075d55c7e24d93d8a39bf7d47864697faf398cc40fd589808dd0282'
'2cee9d6626aa16b6b51a5f48ad2c162564ce97dabc367738b4d6af654fcd5845e0d2cd78e5c9fb2378dfba2fd67f32fdbfd42321dc59c9a1222369860312d0a7')
b2sums=('6cca8c26cebb9c2ee5d539c43797d30b6309a476ec4233225789978e1d7315c4ea5d2abbc7f5464be0f3c0de5fd9212706b43fbc92f40b76cd0b1013cc00f823'
'SKIP'
'a63fb542a7eb93bb119d655e068ca7a9be71e760298c37f220beae5331ae73c1478fb3d1455e5431a6487bcf0ce7a612e9cdc923e2da5834fc1ae58d810f8e8d'
'fd9c1f0a1dd3b812c483e1b119782994b556b997583d75fc905a35ba4d4aae94326b24d0313a3b396fef69d4eb6c7dcbd397144b72fd1b729c590cfba432a275'
'e7f38d8c42d48a08b5ca810e237899111856d57635260a5c440cbe8d01ed3dc89541fe7e4d8b84b9d54b1328f17f2c1ea9cf7b6a4a1f37b962bbb6e3cc916da8')
validpgpkeys=(
'829F339F8C296FE80F409D93E3D7C118C7B9F46A' # Partha Susarla <mail@spartha.org>
'DEA1999F0CDB1AAEBA001E0DBEE3E3B4D2F06546' # Quanah Gibson-Mount <quanah@fast-mail.org>
)
prepare() {
cd $pkgbase-$pkgver
autoreconf -fiv
}
build() {
cd $pkgbase-$pkgver
./configure --prefix=/usr \
--disable-krb4 \
--disable-macos-framework \
--disable-otp \
--disable-passdss \
--disable-srp \
--disable-srp-setpass \
--disable-static \
--enable-alwaystrue \
--enable-anon \
--enable-auth-sasldb \
--enable-checkapop \
--enable-cram \
--enable-digest \
--enable-gssapi \
--enable-ldapdb \
--enable-login \
--enable-ntlm \
--enable-plain \
--enable-shared \
--enable-sql \
--infodir=/usr/share/info \
--mandir=/usr/share/man \
--sbin=/usr/bin \
--sysconfdir=/etc \
--with-dblib=gdbm \
--with-devrandom=/dev/urandom \
--with-configdir=/etc/sasl2:/etc/sasl:/usr/lib/sasl2 \
--with-ldap \
--with-mysql=/usr \
--with-pam \
--with-pgsql=/usr/lib \
--with-saslauthd=/var/run/saslauthd \
--with-sqlite3=/usr/lib
# prevent excessive overlinking by libtool
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
make
}
check() {
make -k check -C $pkgbase-$pkgver
}
package_cyrus-sasl() {
depends=(gdbm libgdbm.so glibc krb5 libkrb5.so libldap libsasl=$pkgver openssl pam libpam.so)
pkgdesc="Cyrus saslauthd SASL authentication daemon"
backup=(etc/conf.d/saslauthd)
make DESTDIR="$pkgdir" install -C $pkgbase-$pkgver/saslauthd
make DESTDIR="$pkgdir" install-data-local -C $pkgbase-$pkgver/saslauthd
install -vDm 644 $pkgbase-$pkgver/COPYING -t "$pkgdir/usr/share/licenses/$pkgname/"
install -vDm 644 saslauthd.conf.d "$pkgdir/etc/conf.d/saslauthd"
install -vDm 644 saslauthd.service -t "$pkgdir/usr/lib/systemd/system/"
install -vDm 644 tmpfiles.conf "$pkgdir/usr/lib/tmpfiles.d/saslauthd.conf"
}
package_cyrus-sasl-gssapi() {
pkgdesc="GSSAPI authentication mechanism for Cyrus SASL"
depends=(glibc krb5 libgssapi_krb5.so libsasl=$pkgver)
replaces=('cyrus-sasl-plugins')
install -vdm 755 "$pkgdir/usr/lib/sasl2"
cp -av $pkgbase-$pkgver/plugins/.libs/libgs{,sapiv}2.so* "$pkgdir/usr/lib/sasl2/"
install -vDm 644 $pkgbase-$pkgver/COPYING -t "$pkgdir/usr/share/licenses/$pkgname/"
}
package_cyrus-sasl-ldap() {
pkgdesc="ldapdb auxprop module for Cyrus SASL"
depends=(glibc libldap libsasl=$pkgver)
replaces=('cyrus-sasl-plugins')
install -vdm 755 "$pkgdir/usr/lib/sasl2"
cp -av $pkgbase-$pkgver/plugins/.libs/libldapdb.so* "$pkgdir/usr/lib/sasl2/"
install -vDm 644 $pkgbase-$pkgver/COPYING -t "$pkgdir/usr/share/licenses/$pkgname/"
}
package_cyrus-sasl-sql() {
pkgdesc="SQL auxprop module for Cyrus SASL"
depends=(libsasl=$pkgver mariadb-libs libmariadb.so postgresql-libs libpq.so sqlite)
replaces=('cyrus-sasl-plugins')
install -vdm 755 "$pkgdir/usr/lib/sasl2"
cp -av $pkgbase-$pkgver/plugins/.libs/libsql.so* "$pkgdir/usr/lib/sasl2/"
install -vDm 644 $pkgbase-$pkgver/COPYING -t "$pkgdir/usr/share/licenses/$pkgname/"
}

View File

@ -6,7 +6,7 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=dkms
pkgver=3.0.9
pkgver=3.0.10
pkgrel=01
pkgdesc='Dynamic Kernel Modules System'
arch=('any')
@ -80,3 +80,4 @@ sha256sums=(SKIP
# 85046fb0accb7a9cf8481cda21e9f7acfb6300ebceffb4bb0dd642fd2cb46722 dkms-3.0.9-01-any.pkg.tar.xz

View File

@ -2,7 +2,7 @@
# Contributor: Balwinder S "bsd" Dheeman (bdheeman AT gmail.com)
pkgname=dkms
pkgver=3.0.9
pkgver=3.0.10
pkgrel=1
pkgdesc='Dynamic Kernel Modules System'
arch=('any')

View File

@ -1,6 +1,6 @@
real 0m8.735s
user 0m3.334s
sys 0m0.626s
real 0m5.530s
user 0m2.099s
sys 0m0.583s

64
fluidsynth/PKGBUILD Normal file
View File

@ -0,0 +1,64 @@
#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
# Website : https://pozol.eu
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=fluidsynth
pkgver=2.3.1
pkgrel=01
pkgdesc="A real-time software synthesizer based on the SoundFont 2 specifications w/o systemd"
arch=(x86_64)
url="https://www.fluidsynth.org/"
groups=(pro-audio)
depends=(glibc sdl2)
makedepends=(alsa-lib cmake dbus doxygen glib2 jack ladspa libinstpatch
libpulse libsndfile portaudio readline )
provides=(libfluidsynth.so soundfont-synthesizer)
backup=(etc/conf.d/$pkgname)
# options=(debug) ## uncomment this to produce the debug package for fluidsynth
source=($pkgname-$pkgver.tar.gz::https://github.com/$pkgname/$pkgname/archive/v$pkgver.tar.gz)
install="$pkgname.install"
#prepare() {
# # remove sandboxing options only available to systemd system services: https://github.com/FluidSynth/fluidsynth/issues/1147
# patch -Np1 -d $pkgname-$pkgver -i ../$pkgname-2.2.9-user_service_hardening.patch
#}
build() {
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=None \
-DFLUID_DAEMON_ENV_FILE=/etc/conf.d/fluidsynth \
-Denable-ladspa=ON \
-Denable-portaudio=ON \
-DLIB_SUFFIX="" \
-Wno-dev \
-B build \
-S $pkgname-$pkgver
make -C build VERBOSE=1
}
check() {
make -C build -k check
}
package() {
depends+=(libasound.so libdbus-1.so libglib-2.0.so libgmodule-2.0.so
libgobject-2.0.so libinstpatch-1.0.so libjack.so libportaudio.so
libpulse-simple.so libreadline.so libsndfile.so)
make -C build DESTDIR="$pkgdir" install
# systemd user unit
# install -vDm 644 build/$pkgname.service -t "$pkgdir/usr/lib/systemd/user/"
# system-wide configuration file
install -vDm 644 build/$pkgname.conf "$pkgdir/etc/conf.d/$pkgname"
# docs
install -vDm 644 $pkgname-$pkgver/{AUTHORS,ChangeLog,{CONTRIBUTING,README}.md,THANKS,TODO} -t "$pkgdir/usr/share/doc/$pkgname/"
}
#---- license gpg-key sha256sums ----
license=(LGPL2.1)
sha256sums=(d734e4cf488be763cf123e5976f3154f0094815093eecdf71e0e9ae148431883) # fluidsynth-2.3.1.tar.gz

52
fluidsynth/PKGBUILD-arch Normal file
View File

@ -0,0 +1,52 @@
# Maintainer: David Runge <dvzrv@archlinux.org>
# Contributor: Ray Rashif <schiv@archlinux.org>
# Contributor: damir <damir@archlinux.org>
pkgname=fluidsynth
pkgver=2.3.1
pkgrel=1
pkgdesc="A real-time software synthesizer based on the SoundFont 2 specifications"
arch=(x86_64)
url="https://www.fluidsynth.org/"
license=(LGPL2.1)
groups=(pro-audio)
depends=(glibc sdl2)
makedepends=(alsa-lib cmake dbus doxygen glib2 jack ladspa libinstpatch
libpulse libsndfile pipewire portaudio readline systemd-libs)
provides=(libfluidsynth.so soundfont-synthesizer)
backup=(etc/conf.d/$pkgname)
source=($pkgname-$pkgver.tar.gz::https://github.com/$pkgname/$pkgname/archive/v$pkgver.tar.gz)
sha512sums=('1633294bf6c714361c381151b62d9dd2c8f388490153e7964bfa14fd647a681db9ebfe1de0a06279972d6c5b30377f67361feb4db186b1faa235600f0ae02b22')
b2sums=('a1501303e02b3ea64d87be5cff08d5f2f2be170b38faedc8e6bc4fd18c0dafe268fa6110708664ef0659df9f0e9680551ac483d30364977e768af60dfdff7e83')
build() {
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=None \
-DFLUID_DAEMON_ENV_FILE=/etc/conf.d/fluidsynth \
-Denable-ladspa=ON \
-Denable-portaudio=ON \
-DLIB_SUFFIX="" \
-Wno-dev \
-B build \
-S $pkgname-$pkgver
make -C build VERBOSE=1
}
check() {
make -C build -k check
}
package() {
depends+=(libasound.so libdbus-1.so libglib-2.0.so libgmodule-2.0.so
libgobject-2.0.so libinstpatch-1.0.so libjack.so libpipewire-0.3.so
libportaudio.so libpulse-simple.so libreadline.so libsndfile.so
libsystemd.so)
make -C build DESTDIR="$pkgdir" install
# systemd user unit
install -vDm 644 build/$pkgname.service -t "$pkgdir/usr/lib/systemd/user/"
# system-wide configuration file
install -vDm 644 build/$pkgname.conf "$pkgdir/etc/conf.d/$pkgname"
# docs
install -vDm 644 $pkgname-$pkgver/{AUTHORS,ChangeLog,{CONTRIBUTING,README}.md,THANKS,TODO} -t "$pkgdir/usr/share/doc/$pkgname/"
}

View File

@ -0,0 +1,52 @@
# Maintainer: David Runge <dvzrv@archlinux.org>
# Contributor: Ray Rashif <schiv@archlinux.org>
# Contributor: damir <damir@archlinux.org>
pkgname=fluidsynth
pkgver=2.3.0
pkgrel=1
pkgdesc="A real-time software synthesizer based on the SoundFont 2 specifications"
arch=(x86_64)
url="https://www.fluidsynth.org/"
license=(LGPL2.1)
groups=(pro-audio)
depends=(glibc sdl2)
makedepends=(alsa-lib cmake dbus doxygen glib2 jack ladspa libinstpatch
libpulse libsndfile portaudio readline systemd-libs)
provides=(libfluidsynth.so soundfont-synthesizer)
backup=(etc/conf.d/$pkgname)
options=(debug)
source=($pkgname-$pkgver.tar.gz::https://github.com/$pkgname/$pkgname/archive/v$pkgver.tar.gz)
sha512sums=('621a54f7d9845a9350381e9aa99f342b28050e1dd80983e69828acc685ace39ee5376f8e40d7a93ddb247718e4bcfb3f196cbd4027343251f8c0fbe3c0d219ed')
b2sums=('845f4b1d00b743edf7ef8a5660c239c2924ca51306fbd8f45c0c965198ed2d5267bacf8333a44720beb3f283e9a75bbb8b497dcb0b004153d5f8a9d9ed4f5224')
build() {
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=None \
-DFLUID_DAEMON_ENV_FILE=/etc/conf.d/fluidsynth \
-Denable-ladspa=ON \
-Denable-portaudio=ON \
-DLIB_SUFFIX="" \
-Wno-dev \
-B build \
-S $pkgname-$pkgver
make -C build VERBOSE=1
}
check() {
make -C build -k check
}
package() {
depends+=(libasound.so libdbus-1.so libglib-2.0.so libgmodule-2.0.so
libgobject-2.0.so libinstpatch-1.0.so libjack.so libportaudio.so
libpulse-simple.so libreadline.so libsndfile.so libsystemd.so)
make -C build DESTDIR="$pkgdir" install
# systemd user unit
install -vDm 644 build/$pkgname.service -t "$pkgdir/usr/lib/systemd/user/"
# system-wide configuration file
install -vDm 644 build/$pkgname.conf "$pkgdir/etc/conf.d/$pkgname"
# docs
install -vDm 644 $pkgname-$pkgver/{AUTHORS,ChangeLog,{CONTRIBUTING,README}.md,THANKS,TODO} -t "$pkgdir/usr/share/doc/$pkgname/"
}

1
fluidsynth/clean Normal file
View File

@ -0,0 +1 @@
rm -rf {src,pkg,fl*.gz}

12
fluidsynth/deps Normal file
View File

@ -0,0 +1,12 @@
sdl2
alsa-lib
cmake
doxygen
jack2
ladspa
libinstpatch
libpulse
libsndfile
portaudio
libglvnd

View File

@ -0,0 +1,35 @@
From ecd5f01ad3078e391a289563e9a77db015a6bc3a Mon Sep 17 00:00:00 2001
From: David Runge <dave@sleepmap.de>
Date: Wed, 7 Sep 2022 10:30:26 +0200
Subject: [PATCH] Remove systemd hardening options for system services
fluidsynth.service.in:
As fluidsynth is run as a systemd user service, applying sandboxing
options only available to systemd system services will prevent the user
service from starting, thus we remove the ones only available to system
services.
---
fluidsynth.service.in | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/fluidsynth.service.in b/fluidsynth.service.in
index 857994214..f49d5fce9 100644
--- a/fluidsynth.service.in
+++ b/fluidsynth.service.in
@@ -4,16 +4,7 @@ Documentation=man:fluidsynth(1)
After=sound.target
[Service]
-# added automatically, for details please see
-# https://en.opensuse.org/openSUSE:Security_Features#Systemd_hardening_effort
ProtectSystem=full
-ProtectHome=read-only
-ProtectHostname=true
-ProtectKernelTunables=true
-ProtectKernelModules=true
-ProtectKernelLogs=true
-ProtectControlGroups=true
-# end of automatic additions
Type=notify
NotifyAccess=main
EnvironmentFile=@FLUID_DAEMON_ENV_FILE@

View File

@ -0,0 +1,21 @@
post_install() {
echo "*"
echo "* Hint: There was an interrim arch-testing version of this edition"
echo "* built just like the past ones, then a day later Arch decided"
echo "* to build the pkg with pipewire. Pipewire is nothing more than"
echo "* a disguised new pulseaudio made by the same gang that brought"
echo "* systemd, gnome, pulseaudio, ..etc. "
echo "* You may hear about all this additional and much needed"
echo "* functionality it may bring, but it is our opinion all this is"
echo "* extra fluff and unwelcomed automation, in the cost of additional"
echo "* resources, space, bandwidth, and required machinery."
echo "* The reason Joborun exists is to resist this fluff and garbage"
echo "* mega-corporations have brought to linux to make yet another"
echo "* system just like Microsoft Windows"
echo "* So we will keep building with less fat, fluff, and garbage."
echo "* For everyone else there is Arch, Manjaro, and the like."
echo "* "
echo "* Therefore: No pipewire in our fluidsynth"
echo "*"
}

6
fluidsynth/time Normal file
View File

@ -0,0 +1,6 @@
real 0m37.403s
user 0m27.753s
sys 0m4.685s

View File

@ -6,7 +6,7 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=git
pkgver=2.39.0
pkgver=2.39.1
pkgrel=01
pkgdesc='the fast distributed version control system w/o systemd'
arch=('x86_64')
@ -14,7 +14,6 @@ url='https://git-scm.com/'
depends=('curl' 'expat' 'perl' 'perl-error' 'perl-mailtools'
'openssl' 'pcre2' 'grep' 'shadow' 'zlib')
makedepends=('python' 'libgnome-keyring' 'xmlto' 'asciidoc')
#options=('debug') ## uncomment this to get the debug package produced
optdepends=('tk: gitk and git gui'
'perl-libwww: git svn'
'perl-term-readkey: git svn and interactive.singlekey setting'
@ -30,8 +29,6 @@ optdepends=('tk: gitk and git gui'
'libsecret: libsecret credential helper')
install=git.install
source=("https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar."{xz,sign}
# 'git-daemon@.service'
# 'git-daemon.socket'
'git-sysusers.conf')
_make_paths=(
@ -130,8 +127,8 @@ license=('GPL2')
validpgpkeys=('96E07AF25771955980DAD10020D04E5A713660A7') # Junio C Hamano
sha256sums=(ba199b13fb5a99ca3dec917b0bd736bc0eb5a9df87737d435eddfdf10d69265b # git-2.39.0.tar.xz
7d3bc890be48233176594ab437b213293d5df8c017b0eb870b2b899c6a531016 # git-2.39.0.tar.sign
sha256sums=(40a38a0847b30c371b35873b3afcf123885dd41ea3ecbbf510efa97f3ce5c161 # git-2.39.1.tar.xz
f647af355cbaa5a73e6be7a029b8134d99373cbb91460e78f365086d14a76eb2 # git-2.39.1.tar.sign
7630e8245526ad80f703fac9900a1328588c503ce32b37b9f8811674fcda4a45) # git-sysusers.conf

View File

@ -2,7 +2,7 @@
# Maintainer: Dan McGee <dan@archlinux.org>
pkgname=git
pkgver=2.39.0
pkgver=2.39.1
pkgrel=1
pkgdesc='the fast distributed version control system'
arch=('x86_64')
@ -24,14 +24,13 @@ optdepends=('tk: gitk and git gui'
'subversion: git svn'
'org.freedesktop.secrets: keyring credential helper'
'libsecret: libsecret credential helper')
options=('debug')
install=git.install
validpgpkeys=('96E07AF25771955980DAD10020D04E5A713660A7') # Junio C Hamano
source=("https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar."{xz,sign}
'git-daemon@.service'
'git-daemon.socket'
'git-sysusers.conf')
sha256sums=('ba199b13fb5a99ca3dec917b0bd736bc0eb5a9df87737d435eddfdf10d69265b'
sha256sums=('40a38a0847b30c371b35873b3afcf123885dd41ea3ecbbf510efa97f3ce5c161'
'SKIP'
'14c0b67cfe116b430645c19d8c4759419657e6809dfa28f438c33a005245ad91'
'ac4c90d62c44926e6d30d18d97767efc901076d4e0283ed812a349aece72f203'

16
joborun-zsh/LICENSE Normal file
View File

@ -0,0 +1,16 @@
Copyleft (c) 2021-2023 JOBORun <joborun@disroot.org>
Copyright (c) 2015-2018 Eric Vidal <eric@obarun.org>
All rights reserved.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

26
joborun-zsh/PKGBUILD Normal file
View File

@ -0,0 +1,26 @@
# Maintainer: Eric Vidal <eric@obarun.org>
pkgname=obarun-zsh
pkgver=0.5
pkgrel=2
pkgdesc="Obarun zsh dotfiles"
arch=(x86_64)
url='https://obarun.org'
license=('ISC')
depends=('zsh')
optdepends=('fzf: interactive menu support')
source=('zshrc' 'zshenv' 'LICENSE')
backup=('etc/skel/.zshrc' 'etc/skel/.zshenv' 'etc/.zshrc' 'etc/.zshenv')
sha256sums=('209680f43be852f72f953c7b9c37082cb0f85f2ad35dc1e912b7b729cef883e8'
'579d0505351ee9883708c845176084d21f97e728ba28851127fe4bbfeca9a7af'
'3aa3f0b36771bb2c6eeb386308fb0bff525b9e82ea189872384477156e455cff')
package() {
install -D -m644 zshrc ${pkgdir}/etc/skel/.zshrc
install -D -m644 zshenv ${pkgdir}/etc/skel/.zshenv
install -D -m644 zshrc ${pkgdir}/etc/.zshrc
install -D -m644 zshenv ${pkgdir}/etc/.zshenv
install -Dm 0644 "LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}

2
joborun-zsh/zshenv Normal file
View File

@ -0,0 +1,2 @@
typeset -U path
path=(/usr/bin /bin /usr/local/bin /opt /usr/share/man $path)

364
joborun-zsh/zshrc Normal file
View File

@ -0,0 +1,364 @@
# .zshrc
# Author: Piotr Karbowski <piotr.karbowski@gmail.com>
# License: ISC.
# modified by : Eric vidal <eric@obarun.org> for Obarun OS
# modified by : Joborun <joborun@disroot.org> for Joborun Linux
# Basic zsh config.
ZDOTDIR=${ZDOTDIR:-${HOME}}
ZSHDDIR="${HOME}/.config/zsh.d"
HISTFILE="${ZDOTDIR}/.zsh_history"
HISTSIZE='20000'
SAVEHIST="${HISTSIZE}"
#export EDITOR="/usr/bin/mcedit"
export EDITOR="/usr/bin/nano"
## can be useful :)
#source /usr/lib/obarun/common_functions
TMP=${HOME}/tmp
if [ ! -d "${TMP}" ]; then mkdir -m1777 "${TMP}"; fi
# Colors
red='\e[0;31m'
RED='\e[1;31m'
green='\e[0;32m'
GREEN='\e[1;32m'
yellow='\e[0;33m'
YELLOW='\e[1;33m'
blue='\e[0;34m'
BLUE='\e[1;34m'
purple='\e[0;35m'
PURPLE='\e[1;35m'
cyan='\e[0;36m'
CYAN='\e[1;36m'
NC='\e[0m'
# Functions
if [ -f '/etc/profile.d/prll.sh' ]; then
. "/etc/profile.d/prll.sh"
fi
reload() {
if [[ "$#*" -eq 0 ]]; then
test -r ~/.zshrc && . ~/.zshrc
return 0
else
local fn
for fn in $*; do
unfunction $fn
autoload -U $fn
done
fi
}
# Fzf menu to search and kill process
fkill() {
local pid
pid=$(ps -ef | sed 1d | fzf -m | awk '{print $2}')
if [ "x$pid" != "x" ]
then
echo $pid | xargs kill -${1:-9}
fi
}
# Search a specific term into a specific file
# This function search only in current directory and sub-directory
# e.g. search_in_file "pkgver=" "PKGBUILD"
search_in_file() {
local search="${1}"
local infile="${2}"
for i in $(find -name ${infile});do
if grep -qns "${search}" $i; then
printf "found in : ${GREEN}%s${NC}\n" $i
grep -n "${search}" $i
printf "\n"
fi
done
}
# Search a specific term into current directory and sub-direcotory
# e.g. search_in "pkgname"
search_in() {
local search="${1}"
for i in $(find);do
if grep -qns "${search}" $i; then
printf "found in : ${GREEN}%s${NC}\n" $i
grep -n "${search}" $i
printf "\n"
fi
done
}
over_ssh() {
if [ -n "${SSH_CLIENT}" ]; then
return 0
else
return 1
fi
}
confirm() {
local answer
echo -ne "zsh: sure you want to run '${YELLOW}$*${NC}' [yN]? "
read -q answer
echo
if [[ "${answer}" =~ ^[Yy]$ ]]; then
command "${@}"
else
return 1
fi
}
confirm_wrapper() {
if [ "$1" = '--root' ]; then
local as_root='true'
shift
fi
local prefix=''
if [ "${as_root}" = 'true' ] && [ "${USER}" != 'root' ]; then
prefix="sudo"
fi
confirm ${prefix} "$@"
}
poweroff() { confirm_wrapper --root $0 "$@"; }
reboot() { confirm_wrapper --root $0 "$@"; }
hibernate() { confirm_wrapper --root $0 "$@"; }
escape() {
# Uber useful when you need to translate weird as fuck path into single-argument string.
local escape_string_input
echo -n "String to escape: "
read escape_string_input
printf '%q\n' "$escape_string_input"
}
detox() {
if [ "$#" -ge 1 ]; then
confirm detox "$@"
else
command detox "$@"
fi
}
has() {
local string="${1}"
shift
local element=''
for element in "$@"; do
if [ "${string}" = "${element}" ]; then
return 0
fi
done
return 1
}
begin_with() {
local string="${1}"
shift
local element=''
for element in "$@"; do
if [[ "${string}" =~ "^${element}" ]]; then
return 0
fi
done
return 1
}
termtitle() {
case "$TERM" in
rxvt*|xterm|nxterm|gnome|screen|screen-*)
local prompt_host="${(%):-%m}"
local prompt_user="${(%):-%n}"
local prompt_char="${(%):-%~}"
case "$1" in
precmd)
printf '\e]0;%s@%s: %s\a' "${prompt_user}" "${prompt_host}" "${prompt_char}"
;;
preexec)
printf '\e]0;%s [%s@%s: %s]\a' "$2" "${prompt_user}" "${prompt_host}" "${prompt_char}"
;;
esac
;;
esac
}
man() {
if command -v vimmanpager >/dev/null 2>&1; then
PAGER="vimmanpager" command man "$@"
else
command man "$@"
fi
}
dot_progress() {
# Fancy progress function from Landley's Aboriginal Linux.
# Useful for long rm, tar and such.
# Usage:
# rm -rfv /foo | dot_progress
local i='0'
local line=''
while read line; do
i="$((i+1))"
if [ "${i}" = '25' ]; then
printf '.'
i='0'
fi
done
printf '\n'
}
# Le features!
# extended globbing, awesome!
setopt extendedGlob
# zmv - a command for renaming files by means of shell patterns.
autoload -U zmv
# zargs, as an alternative to find -exec and xargs.
autoload -U zargs
# Turn on command substitution in the prompt (and parameter expansion and arithmetic expansion).
setopt promptsubst
# Control-x-e to open current line in $EDITOR, awesome when writting functions or editing multiline commands.
autoload -U edit-command-line
zle -N edit-command-line
# Include user-specified configs.
if [ ! -d "${ZSHDDIR}" ]; then
mkdir -p "${ZSHDDIR}" && echo "# Put your user-specified config here." > "${ZSHDDIR}/example.zsh"
fi
for zshd in $(ls -A ${HOME}/.config/zsh.d/^*.(z)sh$); do
. "${zshd}"
done
# Completion.
autoload -Uz compinit
compinit
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
zstyle ':completion:*' completer _expand _complete _ignored _approximate
zstyle ':completion:*' menu select=2
zstyle ':completion:*' select-prompt '%SScrolling active: current selection at %p%s'
zstyle ':completion::complete:*' use-cache 1
zstyle ':completion:*:descriptions' format '%U%F{cyan}%d%f%u'
zstyle ':completion:*' rehash true
# If running as root and nice >0, renice to 0.
if [ "$EUID" = "0" ] && [ "$(cut -d ' ' -f 19 /proc/$$/stat)" -gt 0 ]; then
renice -n 0 -p "$$" && echo "# Adjusted nice level for current shell to 0."
fi
# Fancy prompt.
if over_ssh && [ -z "${TMUX}" ]; then
prompt_is_ssh='%F{blue}[%F{red}SSH%F{blue}] '
elif over_ssh; then
prompt_is_ssh='%F{blue}[%F{253}SSH%F{blue}] '
else
unset prompt_is_ssh
fi
case $EUID in
0)
PROMPT='%B%F{red}%n@%m%k %(?..%F{blue}[%F{red}%?%F{blue}] )${prompt_is_ssh}%B%F{blue}%1~${git_prompt}%F{blue} %# %b%f%k'
;;
*)
PROMPT='%B%F{blue}%n@%m%k %(?..%F{blue}[%F{red}%?%F{blue}] )${prompt_is_ssh}%B%F{cyan}%1~${git_prompt}%F{cyan} %# %b%f%k'
;;
esac
# Ignore lines prefixed with '#'.
setopt interactivecomments
# Ignore duplicate in history.
setopt hist_ignore_dups
# Prevent record in history entry if preceding them with at least one space
setopt hist_ignore_space
# Nobody need flow control anymore. Troublesome feature.
#stty -ixon
setopt noflowcontrol
# Fix for tmux on linux.
case "$(uname -o)" in
'GNU/Linux')
export EVENT_NOEPOLL=1
;;
esac
# Aliases
alias lsd='ls -altrh '
alias lss='ls -alSrh '
alias slsd='sudo ls -altrh '
alias slss='sudo ls -alSrh '
alias md='mkdir -p'
alias sudo='sudo '
alias cp='cp -iv'
alias rcp='rsync -v --progress'
alias rmv='rsync -v --progress --remove-source-files'
alias mv='mv -iv'
alias rm='rm -iv'
alias rmdir='rmdir -v'
alias ln='ln -v'
alias chmod="chmod -c"
alias chown="chown -c"
if command -v colordiff > /dev/null 2>&1; then
alias diff="colordiff -Nuar"
else
alias diff="diff --color=auto -Nuar"
fi
alias pm=' nc termbin.com 9999'
alias grep='grep --color=auto'
alias egrep='egrep --color=auto'
#alias ls='ls -alh --color=always --human-readable --group-directories-first --classify'
##replace mygpg by your own
alias sign='gpg --detach-sign --use-agent -u mygpg --no-armor'
alias pkg='f(){sudo pacman -$@;unset -f f;};f'
alias dep='f(){pactree -r -d1 $@;unset -f f;};f'
alias deps='f(){pactree -r $@;unset -f f;};f'
alias yay='f(){package-query -AQSs --rsort w --show-size $@;unset -f f;};f'
alias edit='f(){nano $@;unset -f f;};f'
alias sedit='f(){sudo nano $@;unset -f f;};f'
alias lshome='ls -lhtr ~/'
alias depR='pkg -Rnsu $(cat deps)'
alias depS='pkg -S $(cat deps)'
##Binkey
bindkey -e
bindkey '^[[H' beginning-of-line # home key
bindkey '^[[F' end-of-line # end key
bindkey '^[[3~' delete-char # del key
bindkey '^U' backward-kill-line # control + u
bindkey "^H" backward-kill-word # control + backspace
bindkey "^[[A" history-beginning-search-backward # search history from given command
bindkey "^[[B" history-beginning-search-forward # search history from given command
bindkey -s '^[S' '^Asudo ^E' # alt + shift + s add sudo at the beginning of the line
bindkey '^[[1;5D' backward-word # control + left arrow
bindkey '^[[1;5C' forward-word # control + right arrow
bindkey "^R" history-incremental-pattern-search-backward
bindkey "^S" history-incremental-pattern-search-forward
bindkey "^X^E" edit-command-line

451
joborun-zsh/zshrc.o Normal file
View File

@ -0,0 +1,451 @@
# .zshrc
# Author: Piotr Karbowski <piotr.karbowski@gmail.com>
# License: ISC.
# modified by : Eric vidal <eric@obarun.org> for Obarun OS
# Basic zsh config.
ZDOTDIR=${ZDOTDIR:-${HOME}}
ZSHDDIR="${HOME}/.config/zsh.d"
HISTFILE="${ZDOTDIR}/.zsh_history"
HISTSIZE='10000'
SAVEHIST="${HISTSIZE}"
export EDITOR="/usr/bin/mcedit"
## can be useful :)
#source /usr/lib/obarun/common_functions
TMP=${HOME}/tmp
if [ ! -d "${TMP}" ]; then mkdir -m1777 "${TMP}"; fi
# Colors.
red='\e[0;31m'
RED='\e[1;31m'
green='\e[0;32m'
GREEN='\e[1;32m'
yellow='\e[0;33m'
YELLOW='\e[1;33m'
blue='\e[0;34m'
BLUE='\e[1;34m'
purple='\e[0;35m'
PURPLE='\e[1;35m'
cyan='\e[0;36m'
CYAN='\e[1;36m'
NC='\e[0m'
# Functions
if [ -f '/etc/profile.d/prll.sh' ]; then
. "/etc/profile.d/prll.sh"
fi
reload() {
if [[ "$#*" -eq 0 ]]; then
test -r ~/.zshrc && . ~/.zshrc
return 0
else
local fn
for fn in $*; do
unfunction $fn
autoload -U $fn
done
fi
}
# Fzf menu to search and kill process
fkill() {
local pid
pid=$(ps -ef | sed 1d | fzf -m | awk '{print $2}')
if [ "x$pid" != "x" ]
then
echo $pid | xargs kill -${1:-9}
fi
}
# Fzf menu to show commit tree and view file change
fshow() {
git log --graph --color=always \
--format="%C(auto)%h%d %s %C(black)%C(bold)%cr" "$@" |
fzf --ansi --no-sort --reverse --tiebreak=index --bind=ctrl-s:toggle-sort \
--bind "ctrl-m:execute:
(grep -o '[a-f0-9]\{7\}' | head -1 |
xargs -I % sh -c 'git show --color=always % | less -R') << 'FZF-EOF'
{}
FZF-EOF"
}
# Search a specific term into a specific file
# This function search only in current directory and sub-directory
# e.g. search_in_file "pkgver=" "PKGBUILD"
search_in_file() {
local search="${1}"
local infile="${2}"
for i in $(find -name ${infile});do
if grep -qns "${search}" $i; then
printf "found in : ${GREEN}%s${NC}\n" $i
grep -n "${search}" $i
printf "\n"
fi
done
}
# Search a specific term into current directory and sub-direcotory
# e.g. search_in "pkgname"
search_in() {
local search="${1}"
for i in $(find);do
if grep -qns "${search}" $i; then
printf "found in : ${GREEN}%s${NC}\n" $i
grep -n "${search}" $i
printf "\n"
fi
done
}
over_ssh() {
if [ -n "${SSH_CLIENT}" ]; then
return 0
else
return 1
fi
}
confirm() {
local answer
echo -ne "zsh: sure you want to run '${YELLOW}$*${NC}' [yN]? "
read -q answer
echo
if [[ "${answer}" =~ ^[Yy]$ ]]; then
command "${@}"
else
return 1
fi
}
confirm_wrapper() {
if [ "$1" = '--root' ]; then
local as_root='true'
shift
fi
local prefix=''
if [ "${as_root}" = 'true' ] && [ "${USER}" != 'root' ]; then
prefix="sudo"
fi
confirm ${prefix} "$@"
}
poweroff() { confirm_wrapper --root $0 "$@"; }
reboot() { confirm_wrapper --root $0 "$@"; }
hibernate() { confirm_wrapper --root $0 "$@"; }
escape() {
# Uber useful when you need to translate weird as fuck path into single-argument string.
local escape_string_input
echo -n "String to escape: "
read escape_string_input
printf '%q\n' "$escape_string_input"
}
detox() {
if [ "$#" -ge 1 ]; then
confirm detox "$@"
else
command detox "$@"
fi
}
has() {
local string="${1}"
shift
local element=''
for element in "$@"; do
if [ "${string}" = "${element}" ]; then
return 0
fi
done
return 1
}
begin_with() {
local string="${1}"
shift
local element=''
for element in "$@"; do
if [[ "${string}" =~ "^${element}" ]]; then
return 0
fi
done
return 1
}
termtitle() {
case "$TERM" in
rxvt*|xterm|nxterm|gnome|screen|screen-*)
local prompt_host="${(%):-%m}"
local prompt_user="${(%):-%n}"
local prompt_char="${(%):-%~}"
case "$1" in
precmd)
printf '\e]0;%s@%s: %s\a' "${prompt_user}" "${prompt_host}" "${prompt_char}"
;;
preexec)
printf '\e]0;%s [%s@%s: %s]\a' "$2" "${prompt_user}" "${prompt_host}" "${prompt_char}"
;;
esac
;;
esac
}
git_check_if_worktree() {
# This function intend to be only executed in chpwd().
# Check if the current path is in git repo.
# We would want stop this function, on some big git repos it can take some time to cd into.
if [ -n "${skip_zsh_git}" ]; then
git_pwd_is_worktree='false'
return 1
fi
# The : separated list of paths where we will run check for git repo.
# If not set, then we will do it only for /root and /home.
if [ "${UID}" = '0' ]; then
# running 'git' in repo changes owner of git's index files to root, skip prompt git magic if CWD=/home/*
git_check_if_workdir_path="${git_check_if_workdir_path:-/root:/etc}"
else
git_check_if_workdir_path="${git_check_if_workdir_path:-/home}"
git_check_if_workdir_path_exclude="${git_check_if_workdir_path_exclude:-${HOME}/_sshfs}"
fi
if begin_with "${PWD}" ${=git_check_if_workdir_path//:/ }; then
if ! begin_with "${PWD}" ${=git_check_if_workdir_path_exclude//:/ }; then
local git_pwd_is_worktree_match='true'
else
local git_pwd_is_worktree_match='false'
fi
fi
if ! [ "${git_pwd_is_worktree_match}" = 'true' ]; then
git_pwd_is_worktree='false'
return 1
fi
# todo: Prevent checking for /.git or /home/.git, if PWD=/home or PWD=/ maybe...
# damn annoying RBAC messages about Access denied there.
if [ -d '.git' ] || [ "$(git rev-parse --is-inside-work-tree 2> /dev/null)" = 'true' ]; then
git_pwd_is_worktree='true'
git_worktree_is_bare="$(git config core.bare)"
else
unset git_branch git_worktree_is_bare
git_pwd_is_worktree='false'
fi
}
git_branch() {
git_branch="$(git symbolic-ref HEAD 2>/dev/null)"
git_branch="${git_branch##*/}"
git_branch="${git_branch:-no branch}"
}
git_dirty() {
if [ "${git_worktree_is_bare}" = 'false' ] && [ -n "$(git status --untracked-files='no' --porcelain)" ]; then
git_dirty='%F{green}*'
else
unset git_dirty
fi
}
precmd() {
# Set terminal title.
termtitle precmd
if [ "${git_pwd_is_worktree}" = 'true' ]; then
git_branch
git_dirty
git_prompt=" %F{blue}[%F{purple}${git_branch}${git_dirty}%F{blue}]"
else
unset git_prompt
fi
}
preexec() {
# Set terminal title along with current executed command pass as second argument
termtitle preexec "${(V)1}"
}
chpwd() {
git_check_if_worktree
}
man() {
if command -v vimmanpager >/dev/null 2>&1; then
PAGER="vimmanpager" command man "$@"
else
command man "$@"
fi
}
# Check if we started zsh in git worktree, useful with tmux when your new zsh may spawn in source dir.
git_check_if_worktree
if [ "${git_pwd_is_worktree}" = 'true' ]; then
git_branch
git_dirty
git_prompt=" %F{blue}[%F{green}${git_branch}${git_dirty}%F{blue}]"
else
unset git_prompt
fi
dot_progress() {
# Fancy progress function from Landley's Aboriginal Linux.
# Useful for long rm, tar and such.
# Usage:
# rm -rfv /foo | dot_progress
local i='0'
local line=''
while read line; do
i="$((i+1))"
if [ "${i}" = '25' ]; then
printf '.'
i='0'
fi
done
printf '\n'
}
# Le features!
# extended globbing, awesome!
setopt extendedGlob
# zmv - a command for renaming files by means of shell patterns.
autoload -U zmv
# zargs, as an alternative to find -exec and xargs.
autoload -U zargs
# Turn on command substitution in the prompt (and parameter expansion and arithmetic expansion).
setopt promptsubst
# Control-x-e to open current line in $EDITOR, awesome when writting functions or editing multiline commands.
autoload -U edit-command-line
zle -N edit-command-line
# Include user-specified configs.
if [ ! -d "${ZSHDDIR}" ]; then
mkdir -p "${ZSHDDIR}" && echo "# Put your user-specified config here." > "${ZSHDDIR}/example.zsh"
fi
for zshd in $(ls -A ${HOME}/.config/zsh.d/^*.(z)sh$); do
. "${zshd}"
done
# Completion.
autoload -Uz compinit
compinit
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
zstyle ':completion:*' completer _expand _complete _ignored _approximate
zstyle ':completion:*' menu select=2
zstyle ':completion:*' select-prompt '%SScrolling active: current selection at %p%s'
zstyle ':completion::complete:*' use-cache 1
zstyle ':completion:*:descriptions' format '%U%F{cyan}%d%f%u'
zstyle ':completion:*' rehash true
# If running as root and nice >0, renice to 0.
if [ "$EUID" = "0" ] && [ "$(cut -d ' ' -f 19 /proc/$$/stat)" -gt 0 ]; then
renice -n 0 -p "$$" && echo "# Adjusted nice level for current shell to 0."
fi
# Fancy prompt.
if over_ssh && [ -z "${TMUX}" ]; then
prompt_is_ssh='%F{blue}[%F{red}SSH%F{blue}] '
elif over_ssh; then
prompt_is_ssh='%F{blue}[%F{253}SSH%F{blue}] '
else
unset prompt_is_ssh
fi
case $EUID in
0)
PROMPT='%B%F{red}%n@%m%k %(?..%F{blue}[%F{red}%?%F{blue}] )${prompt_is_ssh}%B%F{blue}%1~${git_prompt}%F{blue} %# %b%f%k'
;;
*)
PROMPT='%B%F{blue}%n@%m%k %(?..%F{blue}[%F{red}%?%F{blue}] )${prompt_is_ssh}%B%F{cyan}%1~${git_prompt}%F{cyan} %# %b%f%k'
;;
esac
# Ignore lines prefixed with '#'.
setopt interactivecomments
# Ignore duplicate in history.
setopt hist_ignore_dups
# Prevent record in history entry if preceding them with at least one space
setopt hist_ignore_space
# Nobody need flow control anymore. Troublesome feature.
#stty -ixon
setopt noflowcontrol
# Fix for tmux on linux.
case "$(uname -o)" in
'GNU/Linux')
export EVENT_NOEPOLL=1
;;
esac
# Aliases
alias sudo='sudo '
alias cp='cp -iv'
alias rcp='rsync -v --progress'
alias rmv='rsync -v --progress --remove-source-files'
alias mv='mv -iv'
alias rm='rm -iv'
alias rmdir='rmdir -v'
alias ln='ln -v'
alias chmod="chmod -c"
alias chown="chown -c"
if command -v colordiff > /dev/null 2>&1; then
alias diff="colordiff -Nuar"
else
alias diff="diff -Nuar"
fi
alias grep='grep --colour=auto'
alias egrep='egrep --colour=auto'
alias ls='ls --color=auto --human-readable --group-directories-first --classify'
##replace mygpg by your own
alias sign='gpg --detach-sign --use-agent -u mygpg --no-armor'
alias pkg='f(){sudo pacman -$@;unset -f f;};f'
##Binkey
bindkey -e
bindkey '^[[H' beginning-of-line # home key
bindkey '^[[F' end-of-line # end key
bindkey '^[[3~' delete-char # del key
bindkey '^U' backward-kill-line # control + u
bindkey "^H" backward-kill-word # control + backspace
bindkey "^[[A" history-beginning-search-backward # search history from given command
bindkey "^[[B" history-beginning-search-forward # search history from given command
bindkey -s '^[S' '^Asudo ^E' # alt + shift + s add sudo at the beginning of the line
bindkey '^[[1;5D' backward-word # control + left arrow
bindkey '^[[1;5C' forward-word # control + right arrow
bindkey "^R" history-incremental-pattern-search-backward
bindkey "^S" history-incremental-pattern-search-forward
bindkey "^X^E" edit-command-line

View File

@ -9,15 +9,14 @@ pkgbase=libcamera
pkgname=(libcamera libcamera-tools gst-plugin-libcamera) # libcamera-docs
pkgver=0.0.3
_commit=3c3f20d05113f5f2abbad233e4c792f84328001a # refs/tags/v0.0.3
pkgrel=03
pkgrel=04
pkgdesc="A complex camera support library for Linux, Android, and ChromeOS w/o systemd"
arch=(x86_64)
url="https://libcamera.org/"
depends=(glibc)
makedepends=(doxygen git glib2 graphviz gst-plugins-base gtest libdrm
libjpeg-turbo libtiff libyaml meson python-jinja python-ply python-sphinx
python-pyyaml qt5-base qt5-tools sdl2 texlive-core)
# options=(debug) ## uncomment this to produce the debig pkg
libjpeg-turbo libtiff libyaml meson python-jinja python-ply python-sphinx
python-pyyaml qt5-base qt5-tools sdl2 texlive-core)
source=(git+https://git.libcamera.org/$pkgname/$pkgname.git#tag=$_commit)
_pick() {
@ -126,3 +125,6 @@ license=(LGPL2.1 GPL2)
sha256sums=(SKIP)
# b9fac37999a1725a6a64019f9de0cdc47d95430d421642a2196458a5ad5486fa gst-plugin-libcamera-0.0.3-04-x86_64.pkg.tar.xz
# 4cdd016fbb2430302b97a6518d795348a159cf9ddccaab86e5c7d5d8d8502248 libcamera-0.0.3-04-x86_64.pkg.tar.xz
# bfab088717f2eb50a1f88ce8803285ef705dd5e33822de51f47a1f93f5a68a93 libcamera-tools-0.0.3-04-x86_64.pkg.tar.xz

View File

@ -4,7 +4,7 @@ pkgbase=libcamera
pkgname=(libcamera libcamera-docs libcamera-tools gst-plugin-libcamera)
pkgver=0.0.3
_commit=3c3f20d05113f5f2abbad233e4c792f84328001a # refs/tags/v0.0.3
pkgrel=3
pkgrel=4
pkgdesc="A complex camera support library for Linux, Android, and ChromeOS"
arch=(x86_64)
url="https://libcamera.org/"
@ -13,7 +13,6 @@ depends=(glibc)
makedepends=(doxygen git glib2 graphviz gst-plugins-base gtest libdrm
libjpeg-turbo libtiff libyaml meson python-jinja python-ply python-sphinx
python-pyyaml qt5-base qt5-tools sdl2 systemd texlive-core)
options=(debug)
source=(git+https://git.libcamera.org/$pkgname/$pkgname.git#tag=$_commit)
sha256sums=('SKIP')

View File

@ -7,7 +7,7 @@
pkgname=libfido2
pkgver=1.12.0
pkgrel=04
pkgrel=05
pkgdesc='Library functionality for FIDO 2.0, including communication with a device over USB'
url='https://developers.yubico.com/libfido2/'
arch=('x86_64')
@ -48,3 +48,6 @@ validpgpkeys=('EE90AE0D19774C8386628FAAB428949EF7914718' # pedro martelletto <p
sha256sums=(813d6d25116143d16d2e96791718a74825da16b774a8d093d96f06ae1730d9c5 # libfido2-1.12.0.tar.gz
538f928627eccb909ae1727102b092f25686e78deba1ac561e97b21b84a564ce) # libfido2-1.12.0.tar.gz.sig
# 99167126f6d19ea8350fed19702fdbd0290976f62718aa706517c6a3c40cd126 libfido2-1.12.0-05-x86_64.pkg.tar.xz

View File

@ -3,7 +3,7 @@
pkgname=libfido2
pkgver=1.12.0
pkgrel=4
pkgrel=5
pkgdesc='Library functionality for FIDO 2.0, including communication with a device over USB'
url='https://developers.yubico.com/libfido2/'
arch=('x86_64')

View File

@ -3,3 +3,4 @@ libcbor
hidapi

View File

@ -6,16 +6,15 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=libgit2
pkgver=1.5.0
pkgver=1.5.1
pkgrel=02
epoch=1
pkgdesc="A linkable library for Git"
arch=(x86_64)
url="https://github.com/libgit2/libgit2"
depends=(glibc http-parser openssl pcre zlib)
makedepends=(cmake libssh2 python)
depends=(gcc-libs glibc http-parser zlib)
makedepends=(cmake libssh2 openssl python pcre2)
provides=(libgit2.so)
#options=(debug) ## uncomment this to have the debug pkg produced
source=($pkgname-$pkgver.tar.gz::https://github.com/$pkgname/$pkgname/archive/v$pkgver.tar.gz
$pkgname-1.5.0-remove_http-parse_incompatible_tests.patch)
@ -26,35 +25,47 @@ prepare() {
}
build() {
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=None \
-DUSE_HTTP_PARSER=system \
-DUSE_SSH=ON \
-DTHREADSAFE=ON \
-Wno-dev \
-B build \
-S $pkgname-$pkgver
cmake --build build
local cmake_options=(
-B build
-DCMAKE_BUILD_TYPE=None
-DCMAKE_INSTALL_PREFIX=/usr
-DREGEX_BACKEND=pcre2
-DUSE_HTTP_PARSER=system
-DUSE_SSH=ON
-S $pkgname-$pkgver
-Wno-dev
)
cmake "${cmake_options[@]}"
cmake --build build --verbose
}
check() {
# NOTE: disable tests requiring the internet and relying on non-existent resources
ctest --test-dir build --output-on-failure -E "invasive|online"
ctest --test-dir build --output-on-failure -E "invasive|online|ssh"
}
package() {
depends+=(libssh2.so)
depends+=(
libssh2 libssh2.so
openssl libcrypto.so libssl.so
pcre2 libpcre2-8.so
)
DESTDIR="$pkgdir" cmake --install build
install -vDm 644 $pkgname-$pkgver/{AUTHORS,README.md} -t "$pkgdir/usr/share/doc/$pkgname"
install -vDm 644 $pkgname-$pkgver/{AUTHORS,README.md} -t "$pkgdir/usr/share/doc/$pkgname/"
}
#---- license gpg-key sha256sums ----
license=(GPL2)
sha256sums=(8de872a0f201b33d9522b817c92e14edb4efad18dae95cf156cf240b2efff93e # libgit2-1.5.0.tar.gz
sha256sums=(7074f1e2697992b82402501182db254fe62d64877b12f6e4c64656516f4cde88 # libgit2-1.5.1.tar.gz
8e232d3ac6ba756d6055aaccca9d5704417fe77f53ad91898ffbe1b1439523aa) # libgit2-1.5.0-remove_http-parse_incompatible_tests.patch
sha512sums=('04cf389e30cd9fb787704e3c8997acaaeea5c13e1e2f9eaf9f5598d35c2e85f3cf04b47312cae9e7278236ecb089c2d33addd852e38d3c7d2daa87929b077f39'
'f9bb9ad7eb0f43003f5f72c81575ef5751b893fdf257d888b56818ee2c136b496b7cf72627a53dbd01319e33d0dd373e9d6df887360f7bec367419ef0c7ab711')
b2sums=('4df80216523f4065e46c1ce99fd0747d2f8516571691c8c2b5638e32c805f5ce08d3add769e6d5ce29ac69b35419db82ce56c6b3019e70573c4ad63aca2e440d'
'b3c2386ba84664318573e5c24797d28db914d60782397d8b39a21b54b4fb19502945fa8fcc0d8bbe8949349b5ec705d3e1345b0cbbb51b7d9631fec922f3ac41')

View File

@ -4,24 +4,23 @@
# Contributor: Dave Reisner <d@falconindy.com>
pkgname=libgit2
pkgver=1.5.0
pkgver=1.5.1
pkgrel=2
epoch=1
pkgdesc="A linkable library for Git"
arch=(x86_64)
url="https://github.com/libgit2/libgit2"
license=(GPL2)
depends=(glibc http-parser openssl pcre zlib)
makedepends=(cmake libssh2 python)
depends=(gcc-libs glibc http-parser zlib)
makedepends=(cmake libssh2 openssl python pcre2)
provides=(libgit2.so)
options=(debug)
source=(
$pkgname-$pkgver.tar.gz::https://github.com/$pkgname/$pkgname/archive/v$pkgver.tar.gz
$pkgname-1.5.0-remove_http-parse_incompatible_tests.patch
)
sha512sums=('7a32b27cd32bd03ce7be6c127317f82a4ac6f16615c3234699676781f4858d057edb0410b2fe36fd2e634b00748a8b0be17f23809e09a7602ba48185134300f7'
sha512sums=('04cf389e30cd9fb787704e3c8997acaaeea5c13e1e2f9eaf9f5598d35c2e85f3cf04b47312cae9e7278236ecb089c2d33addd852e38d3c7d2daa87929b077f39'
'f9bb9ad7eb0f43003f5f72c81575ef5751b893fdf257d888b56818ee2c136b496b7cf72627a53dbd01319e33d0dd373e9d6df887360f7bec367419ef0c7ab711')
b2sums=('4108de0e8fc6a02e4172f47cb69cdfe8c85a0a72235432ca58b02d94e0bcb8390caf0c710060772551cc3a392291778ae14b561256c6d88058d0ae5a277f2fbf'
b2sums=('4df80216523f4065e46c1ce99fd0747d2f8516571691c8c2b5638e32c805f5ce08d3add769e6d5ce29ac69b35419db82ce56c6b3019e70573c4ad63aca2e440d'
'b3c2386ba84664318573e5c24797d28db914d60782397d8b39a21b54b4fb19502945fa8fcc0d8bbe8949349b5ec705d3e1345b0cbbb51b7d9631fec922f3ac41')
prepare() {
@ -31,25 +30,32 @@ prepare() {
}
build() {
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=None \
-DUSE_HTTP_PARSER=system \
-DUSE_SSH=ON \
-DTHREADSAFE=ON \
-Wno-dev \
-B build \
-S $pkgname-$pkgver
cmake --build build
local cmake_options=(
-B build
-DCMAKE_BUILD_TYPE=None
-DCMAKE_INSTALL_PREFIX=/usr
-DREGEX_BACKEND=pcre2
-DUSE_HTTP_PARSER=system
-DUSE_SSH=ON
-S $pkgname-$pkgver
-Wno-dev
)
cmake "${cmake_options[@]}"
cmake --build build --verbose
}
check() {
# NOTE: disable tests requiring the internet and relying on non-existent resources
ctest --test-dir build --output-on-failure -E "invasive|online"
ctest --test-dir build --output-on-failure -E "invasive|online|ssh"
}
package() {
depends+=(libssh2.so)
depends+=(
libssh2 libssh2.so
openssl libcrypto.so libssl.so
pcre2 libpcre2-8.so
)
DESTDIR="$pkgdir" cmake --install build
install -vDm 644 $pkgname-$pkgver/{AUTHORS,README.md} -t "$pkgdir/usr/share/doc/$pkgname"
install -vDm 644 $pkgname-$pkgver/{AUTHORS,README.md} -t "$pkgdir/usr/share/doc/$pkgname/"
}

View File

@ -2,3 +2,6 @@ http-parser
cmake
python
depends=(gcc-libs glibc http-parser zlib)
makedepends=(cmake libssh2 openssl python pcre2)
depends+=(

View File

@ -6,7 +6,7 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=libinput
pkgver=1.22.0
pkgver=1.22.1
pkgrel=01
pkgdesc="Input device management and event handling library - unsigned source"
#url="https://www.freedesktop.org/wiki/Software/libinput/"
@ -56,7 +56,6 @@ license=(custom:X11)
validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) <office@who-t.net>
#sha256sums=(ebbe5a966cf2a12f59666adbfb505cafca58635b96239bbcdf04a09dc4cd0d7b) # 1.22.0.tar.gz
sha256sums=(b9204a860b4f6f9b2587c484f67a21fbdedd01a97db1f983b0b51cb7bdd428aa) # libinput-1.22.0.tar.bz2
sha256sums=(e13f6f118cfbbdc0b6e0edd5e3504abd96a8d0e33dc67cba31c6942c449f77af) # libinput-1.22.1.tar.bz2
## cd79057d5187671c41f3a8961c9cd1efcd81f16300c9ec4344adbafda93409c6 libinput-1.22.1-01-x86_64.pkg.tar.xz

View File

@ -1,7 +1,7 @@
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgname=libinput
pkgver=1.22.0
pkgver=1.22.1
pkgrel=1
pkgdesc="Input device management and event handling library"
url="https://gitlab.freedesktop.org/libinput"
@ -13,9 +13,8 @@ makedepends=('gtk4' 'meson' 'wayland-protocols' 'check') # 'doxygen' 'graphviz'
optdepends=('gtk4: libinput debug-gui'
'python-pyudev: libinput measure'
'python-libevdev: libinput measure')
options=(debug)
source=(https://gitlab.freedesktop.org/libinput/libinput/-/archive/$pkgver/$pkgname-$pkgver.tar.bz2)
sha256sums=('b9204a860b4f6f9b2587c484f67a21fbdedd01a97db1f983b0b51cb7bdd428aa')
sha256sums=('e13f6f118cfbbdc0b6e0edd5e3504abd96a8d0e33dc67cba31c6942c449f77af')
#validpgpkeys=('3C2C43D9447D5938EF4551EBE23B7E70B467F0BF') # Peter Hutterer (Who-T) <office@who-t.net>
build() {

View File

@ -7,7 +7,6 @@ wayland-protocols
cmake
gtk4
check
at-spi2-core

View File

@ -8,7 +8,7 @@
pkgname=librewolf
provides=($pkgname-bin $pkgname)
conflicts=($pkgname-bin $pkgname)
pkgver=108.0.1
pkgver=109.0
pkgrel=01
pkgdesc="Community-maintained fork of Firefox, focused on privacy, security and freedom -binary"
arch=(x86_64)
@ -40,7 +40,8 @@ license=(MPL GPL LGPL)
validpgpkeys=(031F7104E932F7BD7416E7F6D2845E1305D6E801) # <1813007-ohfp@users.noreply.gitlab.com>
sha256sums=(3d8541e05e4c19a13dca8a8ff69a5969596a72419ea248e342682f6c9044a91f # librewolf-108.0.1-1-x86_64.pkg.tar.zst
b67aafc05a88f47bae66698a104dbfc8adc2cfa015351fab765ccbb8cdcd2517 # librewolf-108.0.1-1-x86_64.pkg.tar.zst.sig
sha256sums=(aa6dd4af09a4a6a29c7d1bcaccde520caf0e23ece0a8876d79eda7b9e60442e3 # librewolf-109.0-1-x86_64.pkg.tar.zst
56426cec60d2260889b85d20d3a7d6c569cc75d40cffbd15d5f659d591bb86c3 # librewolf-109.0-1-x86_64.pkg.tar.zst.sig
c3d94f33b96944e80b6fe84e36eaa9b4179ab144fe7aa58c5aa2efae0e2004b9) # librewolf.install

View File

@ -3,7 +3,7 @@
pkgname=librewolf-bin
provides=(${pkgname//-bin/""})
conflicts=(${pkgname//-bin/""})
pkgver=108.0.1
pkgver=109.0
pkgrel=1
pkgdesc="Community-maintained fork of Firefox, focused on privacy, security and freedom."
arch=(x86_64 aarch64)
@ -30,9 +30,9 @@ _uploadpath_sig_aarch64=${_base_url}/${pkgname//-bin/""}-${pkgver}-${pkgrel}-aar
_uploadpath_sig_x86_64=${_base_url}/${pkgname//-bin/""}-${pkgver}-${pkgrel}-x86_64.pkg.tar.zst.sig
source_aarch64=("${_uploadpath_aarch64}" "${_uploadpath_sig_aarch64}")
source_x86_64=("${_uploadpath_x86_64}" "${_uploadpath_sig_x86_64}")
sha256sums_x86_64=('3d8541e05e4c19a13dca8a8ff69a5969596a72419ea248e342682f6c9044a91f'
sha256sums_x86_64=('aa6dd4af09a4a6a29c7d1bcaccde520caf0e23ece0a8876d79eda7b9e60442e3'
'SKIP')
sha256sums_aarch64=('4daecdd2edc34a062382ad4d1f03e766c30aa06a6eaa0d460bcba8a5f124a589'
sha256sums_aarch64=('c92884ac8658073fa704724019e95caa3a00678a5c325c4595acc72719195efe'
'SKIP')
package() {

View File

@ -0,0 +1,41 @@
pkgbase = librewolf-bin
pkgdesc = Community-maintained fork of Firefox, focused on privacy, security and freedom.
pkgver = 108.0.1
pkgrel = 1
url = https://librewolf-community.gitlab.io/
install = librewolf-bin.install
arch = x86_64
arch = aarch64
license = MPL
license = GPL
license = LGPL
depends = gtk3
depends = libxt
depends = startup-notification
depends = mime-types
depends = dbus-glib
depends = nss
depends = ttf-font
depends = libpulse
depends = ffmpeg
optdepends = networkmanager: Location detection via available WiFi networks
optdepends = libnotify: Notification integration
optdepends = pulseaudio: Audio support
optdepends = speech-dispatcher: Text-to-Speech
optdepends = hunspell-en_US: Spell checking, American English
provides = librewolf
conflicts = librewolf
options = !emptydirs
backup = usr/lib/librewolf/librewolf.cfg
backup = usr/lib/librewolf/distribution/policies.json
validpgpkeys = 031F7104E932F7BD7416E7F6D2845E1305D6E801
source_x86_64 = https://gitlab.com/api/v4/projects/12875785/packages/generic/librewolf/108.0.1-1/librewolf-108.0.1-1-x86_64.pkg.tar.zst
source_x86_64 = https://gitlab.com/api/v4/projects/12875785/packages/generic/librewolf/108.0.1-1/librewolf-108.0.1-1-x86_64.pkg.tar.zst.sig
sha256sums_x86_64 = 3d8541e05e4c19a13dca8a8ff69a5969596a72419ea248e342682f6c9044a91f
sha256sums_x86_64 = SKIP
source_aarch64 = https://gitlab.com/api/v4/projects/12875785/packages/generic/librewolf/108.0.1-1/librewolf-108.0.1-1-aarch64.pkg.tar.zst
source_aarch64 = https://gitlab.com/api/v4/projects/12875785/packages/generic/librewolf/108.0.1-1/librewolf-108.0.1-1-aarch64.pkg.tar.zst.sig
sha256sums_aarch64 = 4daecdd2edc34a062382ad4d1f03e766c30aa06a6eaa0d460bcba8a5f124a589
sha256sums_aarch64 = SKIP
pkgname = librewolf-bin

View File

@ -0,0 +1,15 @@
post_upgrade() {
echo ">> Remember to check for changes in /usr/lib/librewolf/librewolf.cfg.pacnew"
echo ">> as those will not automatically overwrite your existing librewolf.cfg."
echo ">> "
echo ">> We would encourage you to migrate your own changes to the new overrides file"
echo ">> at ~/.librewolf/librewolf.overrides.cfg instead, so making changes directly"
echo ">> in your librewolf.cfg is not necessary anymore (in most cases at least)."
echo ">> "
echo ">> Check out https://gitlab.com/librewolf-community/settings/-/merge_requests/13"
echo ">> for more information on this."
}
post_install() {
post_upgrade
}

Binary file not shown.

View File

@ -1,5 +1,18 @@
From eb1c272ab5230d548077b9f59aca4b3457c3a8f8 Mon Sep 17 00:00:00 2001
From: GaryOderNichts <garyodernichts@gmail.com>
Date: Sat, 17 Dec 2022 16:28:40 +0100
Subject: [PATCH] Fix a9e845 and 797755 Allow X*IfEvent() to reenter libX11
---
include/X11/Xlibint.h | 9 +++++-
src/ChkIfEv.c | 5 +++-
src/IfEvent.c | 5 +++-
src/PeekIfEv.c | 5 +++-
src/locking.c | 65 +++++++++----------------------------------
5 files changed, 33 insertions(+), 56 deletions(-)
diff --git a/include/X11/Xlibint.h b/include/X11/Xlibint.h
index e20c4833c16c6d3518e4b7feb9bdbc606584bfcc..b570bd01c657f4d86f06b414a43e96da4319f729 100644
index e20c4833..50099b43 100644
--- a/include/X11/Xlibint.h
+++ b/include/X11/Xlibint.h
@@ -43,6 +43,10 @@ from The Open Group.
@ -20,13 +33,13 @@ index e20c4833c16c6d3518e4b7feb9bdbc606584bfcc..b570bd01c657f4d86f06b414a43e96da
- CARD32 in_ifevent;
+ CARD32 in_ifevent;
+#ifdef XTHREADS
+ xthread_t ifevent_thread;
+ xthread_t ifevent_thread;
+#endif
};
#define XAllocIDs(dpy,ids,n) (*(dpy)->idlist_alloc)(dpy,ids,n)
diff --git a/src/ChkIfEv.c b/src/ChkIfEv.c
index b32c2d3ebcb1aad0e704a3e5dce52dc31971afd2..666366966a0e81bf413a64e015a84da1fcf5cdf0 100644
index b32c2d3e..66636696 100644
--- a/src/ChkIfEv.c
+++ b/src/ChkIfEv.c
@@ -49,8 +49,11 @@ Bool XCheckIfEvent (
@ -43,7 +56,7 @@ index b32c2d3ebcb1aad0e704a3e5dce52dc31971afd2..666366966a0e81bf413a64e015a84da1
for (n = 3; --n >= 0;) {
for (qelt = prev ? prev->next : dpy->head;
diff --git a/src/IfEvent.c b/src/IfEvent.c
index 54c37f0031b27f3d7eb629ec2ea16b615b29e734..35c592e3a54d89f1d2ac1efa40c43a04eab1c0c5 100644
index 54c37f00..35c592e3 100644
--- a/src/IfEvent.c
+++ b/src/IfEvent.c
@@ -48,8 +48,11 @@ XIfEvent (
@ -60,7 +73,7 @@ index 54c37f0031b27f3d7eb629ec2ea16b615b29e734..35c592e3a54d89f1d2ac1efa40c43a04
while (1) {
for (qelt = prev ? prev->next : dpy->head;
diff --git a/src/PeekIfEv.c b/src/PeekIfEv.c
index 68c028b70705968c6757c1e70a238886a94adecb..754749a77c0835c0ba3c1aa6edded15dab7fb478 100644
index 68c028b7..754749a7 100644
--- a/src/PeekIfEv.c
+++ b/src/PeekIfEv.c
@@ -49,8 +49,11 @@ XPeekIfEvent (
@ -77,7 +90,7 @@ index 68c028b70705968c6757c1e70a238886a94adecb..754749a77c0835c0ba3c1aa6edded15d
while (1) {
for (qelt = prev ? prev->next : dpy->head;
diff --git a/src/locking.c b/src/locking.c
index c550603e1f5d0601af3fa19c0b8486ef5b1bc30f..642cf9894268dfbbb79a104b42b4097cfd293d82 100644
index c550603e..3625bd27 100644
--- a/src/locking.c
+++ b/src/locking.c
@@ -240,7 +240,9 @@ static void _XUnlockDisplay(
@ -86,7 +99,7 @@ index c550603e1f5d0601af3fa19c0b8486ef5b1bc30f..642cf9894268dfbbb79a104b42b4097c
#endif /* XTHREADS_WARN */
- xmutex_unlock(dpy->lock->mutex);
+
+ if (dpy->in_ifevent == 0 || dpy->ifevent_thread != xthread_self())
+ if (dpy->in_ifevent == 0 || !xthread_equal(dpy->ifevent_thread, xthread_self()))
+ xmutex_unlock(dpy->lock->mutex);
}
@ -113,7 +126,7 @@ index c550603e1f5d0601af3fa19c0b8486ef5b1bc30f..642cf9894268dfbbb79a104b42b4097c
- Bool wskip
- XTHREADS_FILE_LINE_ARGS
- );
+ if (dpy->in_ifevent && dpy->ifevent_thread == xthread_self())
+ if (dpy->in_ifevent && xthread_equal(dpy->ifevent_thread, xthread_self()))
+ return;
-static void _XIfEventInternalLockDisplay(
@ -181,9 +194,12 @@ index c550603e1f5d0601af3fa19c0b8486ef5b1bc30f..642cf9894268dfbbb79a104b42b4097c
XTHREADS_FILE_LINE_ARGS
)
{
+ if (dpy->in_ifevent && dpy->ifevent_thread == xthread_self())
+ if (dpy->in_ifevent && xthread_equal(dpy->ifevent_thread, xthread_self()))
+ return;
+
#ifdef XTHREADS_WARN
_XLockDisplayWarn(dpy, file, line);
#else
--
GitLab

189
libx11/176.diff.old Normal file
View File

@ -0,0 +1,189 @@
diff --git a/include/X11/Xlibint.h b/include/X11/Xlibint.h
index e20c4833c16c6d3518e4b7feb9bdbc606584bfcc..b570bd01c657f4d86f06b414a43e96da4319f729 100644
--- a/include/X11/Xlibint.h
+++ b/include/X11/Xlibint.h
@@ -43,6 +43,10 @@ from The Open Group.
#include <X11/Xproto.h> /* to declare xEvent */
#include <X11/XlibConf.h> /* for configured options like XTHREADS */
+#ifdef XTHREADS
+#include <X11/Xthreads.h>
+#endif
+
/* The Xlib structs are full of implicit padding to properly align members.
We can't clean that up without breaking ABI, so tell clang not to bother
complaining about it. */
@@ -207,7 +211,10 @@ struct _XDisplay
XIOErrorExitHandler exit_handler;
void *exit_handler_data;
- CARD32 in_ifevent;
+ CARD32 in_ifevent;
+#ifdef XTHREADS
+ xthread_t ifevent_thread;
+#endif
};
#define XAllocIDs(dpy,ids,n) (*(dpy)->idlist_alloc)(dpy,ids,n)
diff --git a/src/ChkIfEv.c b/src/ChkIfEv.c
index b32c2d3ebcb1aad0e704a3e5dce52dc31971afd2..666366966a0e81bf413a64e015a84da1fcf5cdf0 100644
--- a/src/ChkIfEv.c
+++ b/src/ChkIfEv.c
@@ -49,8 +49,11 @@ Bool XCheckIfEvent (
unsigned long qe_serial = 0;
int n; /* time through count */
- dpy->in_ifevent++;
LockDisplay(dpy);
+#ifdef XTHREADS
+ dpy->ifevent_thread = xthread_self();
+#endif
+ dpy->in_ifevent++;
prev = NULL;
for (n = 3; --n >= 0;) {
for (qelt = prev ? prev->next : dpy->head;
diff --git a/src/IfEvent.c b/src/IfEvent.c
index 54c37f0031b27f3d7eb629ec2ea16b615b29e734..35c592e3a54d89f1d2ac1efa40c43a04eab1c0c5 100644
--- a/src/IfEvent.c
+++ b/src/IfEvent.c
@@ -48,8 +48,11 @@ XIfEvent (
register _XQEvent *qelt, *prev;
unsigned long qe_serial = 0;
- dpy->in_ifevent++;
LockDisplay(dpy);
+#ifdef XTHREADS
+ dpy->ifevent_thread = xthread_self();
+#endif
+ dpy->in_ifevent++;
prev = NULL;
while (1) {
for (qelt = prev ? prev->next : dpy->head;
diff --git a/src/PeekIfEv.c b/src/PeekIfEv.c
index 68c028b70705968c6757c1e70a238886a94adecb..754749a77c0835c0ba3c1aa6edded15dab7fb478 100644
--- a/src/PeekIfEv.c
+++ b/src/PeekIfEv.c
@@ -49,8 +49,11 @@ XPeekIfEvent (
register _XQEvent *prev, *qelt;
unsigned long qe_serial = 0;
- dpy->in_ifevent++;
LockDisplay(dpy);
+#ifdef XTHREADS
+ dpy->ifevent_thread = xthread_self();
+#endif
+ dpy->in_ifevent++;
prev = NULL;
while (1) {
for (qelt = prev ? prev->next : dpy->head;
diff --git a/src/locking.c b/src/locking.c
index c550603e1f5d0601af3fa19c0b8486ef5b1bc30f..642cf9894268dfbbb79a104b42b4097cfd293d82 100644
--- a/src/locking.c
+++ b/src/locking.c
@@ -240,7 +240,9 @@ static void _XUnlockDisplay(
if (lock_hist_loc >= LOCK_HIST_SIZE)
lock_hist_loc = 0;
#endif /* XTHREADS_WARN */
- xmutex_unlock(dpy->lock->mutex);
+
+ if (dpy->in_ifevent == 0 || dpy->ifevent_thread != xthread_self())
+ xmutex_unlock(dpy->lock->mutex);
}
@@ -453,63 +455,24 @@ static void _XDisplayLockWait(
}
static void _XLockDisplay(
- Display *dpy
- XTHREADS_FILE_LINE_ARGS
- );
-
-static void _XIfEventLockDisplay(
Display *dpy
XTHREADS_FILE_LINE_ARGS
)
{
- /* assert(dpy->in_ifevent); */
-}
+ struct _XErrorThreadInfo *ti;
-static void _XInternalLockDisplay(
- Display *dpy,
- Bool wskip
- XTHREADS_FILE_LINE_ARGS
- );
+ if (dpy->in_ifevent && dpy->ifevent_thread == xthread_self())
+ return;
-static void _XIfEventInternalLockDisplay(
- Display *dpy,
- Bool wskip
- XTHREADS_FILE_LINE_ARGS
- )
-{
- /* assert(dpy->in_ifevent); */
-}
-
-static void _XIfEventUnlockDisplay(
- Display *dpy
- XTHREADS_FILE_LINE_ARGS
- )
-{
- if (dpy->in_ifevent == 0) {
- dpy->lock_fns->lock_display = _XLockDisplay;
- dpy->lock_fns->unlock_display = _XUnlockDisplay;
- dpy->lock->internal_lock_display = _XInternalLockDisplay;
- UnlockDisplay(dpy);
- } else
- return;
-}
-
-static void _XLockDisplay(
- Display *dpy
- XTHREADS_FILE_LINE_ARGS
- )
-{
-#ifdef XTHREADS
- struct _XErrorThreadInfo *ti;
-#endif
#ifdef XTHREADS_WARN
_XLockDisplayWarn(dpy, file, line);
#else
xmutex_lock(dpy->lock->mutex);
#endif
+
if (dpy->lock->locking_level > 0)
- _XDisplayLockWait(dpy);
-#ifdef XTHREADS
+ _XDisplayLockWait(dpy);
+
/*
* Skip the two function calls below which may generate requests
* when LockDisplay is called from within _XError.
@@ -517,14 +480,9 @@ static void _XLockDisplay(
for (ti = dpy->error_threads; ti; ti = ti->next)
if (ti->error_thread == xthread_self())
return;
-#endif
+
_XIDHandler(dpy);
_XSeqSyncFunction(dpy);
- if (dpy->in_ifevent) {
- dpy->lock_fns->lock_display = _XIfEventLockDisplay;
- dpy->lock_fns->unlock_display = _XIfEventUnlockDisplay;
- dpy->lock->internal_lock_display = _XIfEventInternalLockDisplay;
- }
}
/*
@@ -537,6 +495,9 @@ static void _XInternalLockDisplay(
XTHREADS_FILE_LINE_ARGS
)
{
+ if (dpy->in_ifevent && dpy->ifevent_thread == xthread_self())
+ return;
+
#ifdef XTHREADS_WARN
_XLockDisplayWarn(dpy, file, line);
#else

View File

@ -7,7 +7,7 @@
pkgname=libx11
pkgver=1.8.3
pkgrel=05
pkgrel=06
pkgdesc="X11 client-side library w/o ipv6"
arch=(x86_64)
url="https://xorg.freedesktop.org/"
@ -15,7 +15,6 @@ url="https://xorg.freedesktop.org/"
# https://lists.archlinux.org/pipermail/arch-dev-public/2019-December/029767.html
depends=('libxcb' 'xorgproto')
makedepends=('xorg-util-macros' 'xtrans')
# options=('debug') ## uncomment this line to have the debug pkg produced
source=(${url}/releases/individual/lib/libX11-${pkgver}.tar.xz{,.sig}
176.diff
0001-Revert_Update_XPutBackEvent.diff)
@ -67,6 +66,7 @@ validpgpkeys=('4A193C06D35E7C670FA4EF0BA2FB9E081F2D130E') # Alan Coopersmith <al
sha256sums=(e31565c84006b6b8e01dc9399c806085739710bc2db2e0930f1511ed9d6585bd # libX11-1.8.3.tar.xz
1bbabdabac57d92e4aa6b36027f10cbbf1aac5083e0276ff07b16c4179e167fc # libX11-1.8.3.tar.xz.sig
c78b76692cf0d4190847a56b33468c27f9c72c6c786a8bc54b5a6a0be1bc272a # 176.diff
3da9fb9737201802f36488e0f11f664a9a6a7a230357b7f0c44011d26d285c20 # 176.diff
25cc0dbc16ab15c14c202c492d36593822098ae8abc422ff2e83f1aebc1579ca) # 0001-Revert_Update_XPutBackEvent.diff

View File

@ -2,7 +2,7 @@
pkgname=libx11
pkgver=1.8.3
pkgrel=5
pkgrel=6
pkgdesc="X11 client-side library"
arch=(x86_64)
url="https://xorg.freedesktop.org/"
@ -11,13 +11,12 @@ url="https://xorg.freedesktop.org/"
depends=('libxcb' 'xorgproto')
makedepends=('xorg-util-macros' 'xtrans')
license=('custom')
options=('debug')
source=(${url}/releases/individual/lib/libX11-${pkgver}.tar.xz{,.sig}
176.diff
0001-Revert_Update_XPutBackEvent.diff)
sha512sums=('bc862338fed855986659e9ffa641db6b36c3ac9abced590d1b164e3cc24446671936e3688cdca18393129c4ea41777977eeb37e87d8edc14d6cc5d194a9c0325'
'SKIP'
'6f5a06e7191b355e5adf48c3391ba66dc2482673b1a485f4c53253c1b800847b9c20c006140b1775644dbd6c77668e588b7df9d6f23aee3e3c9d36b7135c3f8b'
'4516a125e18519cfe1cb3c4106b6fc3e0a2b9f59a29631b19a81d0063c3e46ae0aeaa3d6d5da2c637ff3135fd7a63bcfa7b919cc34a6f54f1614128a601f17ad'
'1db742e84c6373d6ce2273c82e5e9b72d7943eea4ffedc9b99570037072ae2cfdf7cd318bf4d5fc6da908304286068e8ba181f6a12cb21b15d47699e77b51341')
validpgpkeys=('4A193C06D35E7C670FA4EF0BA2FB9E081F2D130E') # Alan Coopersmith <alanc@freedesktop.org>
#validpgpkeys=('C41C985FDCF1E5364576638B687393EE37D128F8') # Matthieu Herrb <matthieu.herrb@laas.fr>

View File

@ -6,8 +6,8 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=lighttpd
pkgver=1.4.67
pkgrel=02
pkgver=1.4.68
pkgrel=01
pkgdesc='A secure, fast, compliant and very flexible web-server w/o systemd'
arch=('x86_64')
url="https://www.lighttpd.net/"
@ -74,9 +74,10 @@ validpgpkeys=('C7CA1E9E29DC77F5480894B2E0E7D0171E95BAD7'
'649D0DD767FF206202A76C5158F14A786FE198C8'
'EAAF41A8BE3BB8D001CACD136DE62CA242909B84')
sha256sums=(7e04d767f51a8d824b32e2483ef2950982920d427d1272ef4667f49d6f89f358 # lighttpd-1.4.67.tar.xz
1967c81559b2c4d89567d9c91ebeb31c7da727f95f35854afc62ca0c8d35f7f8 # lighttpd-1.4.67.tar.xz.asc
41f6c0042bb61021553779f861910e335834f6c15e4411756cdc6233b31076fe # lighttpd.logrotate.d
fece4581bebf39768571962dedce176b2b5f487c0abb5c1cfb35395de216c01f # lighttpd.conf
sha256sums=(e56f37ae52b63e1ada4d76ce78005affb6e56eea2f6bdb0ce17d6d36e9583384 # lighttpd-1.4.68.tar.xz
a74ebaf2b8d523885b48396e97057507289d60b51646f3f7510a52b56f4e0273 # lighttpd-1.4.68.tar.xz.asc
41f6c0042bb61021553779f861910e335834f6c15e4411756cdc6233b31076fe # lighttpd.logrotate.d
fece4581bebf39768571962dedce176b2b5f487c0abb5c1cfb35395de216c01f # lighttpd.conf
d8a185145a7c08b4fd8c8e6c12dae3e176389dd9b1c66e239757b2ba5108c871) # lighttpd.tmpfiles

View File

@ -1,8 +1,8 @@
# Maintainer: Pierre Schmitz <pierre@archlinux.de>
pkgname=lighttpd
pkgver=1.4.67
pkgrel=2
pkgver=1.4.68
pkgrel=1
pkgdesc='A secure, fast, compliant and very flexible web-server'
license=('custom')
arch=('x86_64')
@ -17,7 +17,7 @@ backup=('etc/lighttpd/lighttpd.conf' 'etc/logrotate.d/lighttpd')
options=('emptydirs')
source=("https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${pkgver}.tar.xz"{,.asc}
'lighttpd.logrotate.d' 'lighttpd.conf' 'lighttpd.tmpfiles' 'lighttpd.service')
sha256sums=('7e04d767f51a8d824b32e2483ef2950982920d427d1272ef4667f49d6f89f358'
sha256sums=('e56f37ae52b63e1ada4d76ce78005affb6e56eea2f6bdb0ce17d6d36e9583384'
'SKIP'
'41f6c0042bb61021553779f861910e335834f6c15e4411756cdc6233b31076fe'
'fece4581bebf39768571962dedce176b2b5f487c0abb5c1cfb35395de216c01f'

12
lighttpd/lighttpd.service Normal file
View File

@ -0,0 +1,12 @@
[Unit]
Description=Lighttpd Web Server
After=syslog.target network.target
[Service]
PrivateTmp=true
ExecStart=/usr/bin/lighttpd-angel -D -f /etc/lighttpd/lighttpd.conf
ExecReload=/bin/kill -HUP $MAINPID
KillSignal=SIGINT
[Install]
WantedBy=multi-user.target

View File

@ -6,24 +6,26 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=('llvm' 'llvm-libs')
pkgver=14.0.6
pkgrel=04
pkgver=15.0.7
pkgrel=01
arch=('x86_64')
url="https://llvm.org/"
makedepends=('cmake' 'ninja' 'libffi' 'libedit' 'ncurses' 'libxml2'
'python-setuptools' 'python-psutil' 'python-sphinx'
'python-recommonmark')
'python-recommonmark' 'zlib')
options=('staticlibs' '!lto') # Getting thousands of test failures with LTO
#options=('staticlibs' 'debug' '!lto') #### uncomment this to get debug pkg
_source_base=https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver
source=($_source_base/$pkgname-$pkgver.src.tar.xz{,.sig}
llvm-coroutines-ubsan.patch
$_source_base/cmake-$pkgver.src.tar.xz{,.sig}
# llvm-coroutines-ubsan.patch
llvm-config.h)
prepare() {
mv cmake{-$pkgver.src,}
cd llvm-$pkgver.src
# https://github.com/llvm/llvm-project/issues/49689
patch -Np2 -i ../llvm-coroutines-ubsan.patch
# # https://github.com/llvm/llvm-project/issues/49689
# patch -Np2 -i ../llvm-coroutines-ubsan.patch
mkdir build
}
@ -31,8 +33,8 @@ build() {
cd llvm-$pkgver.src/build
# Build only minimal debug info to reduce size # arch -g1 joborun -g0
CFLAGS+=' -g0'
CXXFLAGS+=' -g0'
CFLAGS=${CFLAGS/-g /-g1 }
CXXFLAGS=${CXXFLAGS/-g /-g1 }
local cmake_args=(
-G Ninja
@ -121,12 +123,11 @@ package_llvm-libs() {
license=('custom:Apache 2.0 with LLVM Exception')
validpgpkeys=(474E22316ABF4785A88C6E8EA2C794A986419D8A) # Tom Stellard <tstellar@redhat.com>
validpgpkeys=(474E22316ABF4785A88C6E8EA2C794A986419D8A # Tom Stellard <tstellar@redhat.com>
D574BD5D1D0E98895E3BF90044F2485E45D59042) # Tobias Hieta <tobias@hieta.se>
sha256sums=(050922ecaaca5781fdf6631ea92bc715183f202f9d2f15147226f023414f619a # llvm-14.0.6.src.tar.xz
98fee8942d6f8c508760d76197018b3ceb0542bcf58d061c768a3e03ceeaa6e2 # llvm-14.0.6.src.tar.xz.sig
ee9baf6df05474083857044d92f26f59d3ee709cdf82ba3bdb2792e6645f71d9 # llvm-coroutines-ubsan.patch
sha256sums=(4ad8b2cc8003c86d0078d15d987d84e3a739f24aae9033865c027abae93ee7a4 # llvm-15.0.7.src.tar.xz
6567588e261c7df6b06316a627ff46e4028c6e73f9e1fe5b09aba66b3a7a3bff # llvm-15.0.7.src.tar.xz.sig
8986f29b634fdaa9862eedda78513969fe9788301c9f2d938f4c10a3e7a3e7ea # cmake-15.0.7.src.tar.xz
ab0237b061d53350622796343d2a130d29086d42be93b47f616acdeda81b36eb # cmake-15.0.7.src.tar.xz.sig
597dc5968c695bbdbb0eac9e8eb5117fcd2773bc91edf5ec103ecffffab8bc48) # llvm-config.h

View File

@ -2,39 +2,39 @@
# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com>
pkgname=('llvm' 'llvm-libs')
pkgver=14.0.6
pkgrel=4
pkgver=15.0.7
pkgrel=1
arch=('x86_64')
url="https://llvm.org/"
license=('custom:Apache 2.0 with LLVM Exception')
makedepends=('cmake' 'ninja' 'libffi' 'libedit' 'ncurses' 'libxml2'
'python-setuptools' 'python-psutil' 'python-sphinx'
makedepends=('cmake' 'ninja' 'zlib' 'zstd' 'libffi' 'libedit' 'ncurses'
'libxml2' 'python-setuptools' 'python-psutil' 'python-sphinx'
'python-recommonmark')
options=('staticlibs' 'debug' '!lto') # Getting thousands of test failures with LTO
options=('staticlibs' '!lto') # Getting thousands of test failures with LTO
_source_base=https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver
source=($_source_base/llvm-$pkgver.src.tar.xz{,.sig}
llvm-coroutines-ubsan.patch
$_source_base/cmake-$pkgver.src.tar.xz{,.sig}
llvm-config.h)
sha256sums=('050922ecaaca5781fdf6631ea92bc715183f202f9d2f15147226f023414f619a'
sha256sums=('4ad8b2cc8003c86d0078d15d987d84e3a739f24aae9033865c027abae93ee7a4'
'SKIP'
'8986f29b634fdaa9862eedda78513969fe9788301c9f2d938f4c10a3e7a3e7ea'
'SKIP'
'ee9baf6df05474083857044d92f26f59d3ee709cdf82ba3bdb2792e6645f71d9'
'597dc5968c695bbdbb0eac9e8eb5117fcd2773bc91edf5ec103ecffffab8bc48')
validpgpkeys=('474E22316ABF4785A88C6E8EA2C794A986419D8A') # Tom Stellard <tstellar@redhat.com>
validpgpkeys=('474E22316ABF4785A88C6E8EA2C794A986419D8A' # Tom Stellard <tstellar@redhat.com>
'D574BD5D1D0E98895E3BF90044F2485E45D59042') # Tobias Hieta <tobias@hieta.se>
prepare() {
mv cmake{-$pkgver.src,}
cd llvm-$pkgver.src
mkdir build
# https://github.com/llvm/llvm-project/issues/49689
patch -Np2 -i ../llvm-coroutines-ubsan.patch
}
build() {
cd llvm-$pkgver.src/build
# Build only minimal debug info to reduce size
CFLAGS+=' -g1'
CXXFLAGS+=' -g1'
CFLAGS=${CFLAGS/-g /-g1 }
CXXFLAGS=${CXXFLAGS/-g /-g1 }
local cmake_args=(
-G Ninja
@ -98,7 +98,7 @@ package_llvm() {
package_llvm-libs() {
pkgdesc="LLVM runtime libraries"
depends=('gcc-libs' 'zlib' 'libffi' 'libedit' 'ncurses' 'libxml2')
depends=('gcc-libs' 'zlib' 'zstd' 'libffi' 'libedit' 'ncurses' 'libxml2')
install -d "$pkgdir/usr/lib"
cp -P \

Binary file not shown.

Binary file not shown.

11
llvm/deps.0 Normal file
View File

@ -0,0 +1,11 @@
ocaml
ocaml-ctypes
ocaml-findlib
python-setuptools
python-psutil
python-sphinx
cmake
ninja
libedit
libxml2

View File

@ -1 +1,2 @@
gpg -v --recv-key A2C794A986419D8A
gpg -v --recv-key 44F2485E45D59042

120
llvm14/PKGBUILD Normal file
View File

@ -0,0 +1,120 @@
#!/usr/bin/bash
# JOBoRun : Jwm OpenBox Obarun RUNit
# Maintainer : Joe Bo Run <joborun@disroot.org>
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
# Website : https://pozol.eu
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=('llvm14' 'llvm14-libs')
pkgver=14.0.6
pkgrel=02
arch=('x86_64')
url="https://llvm.org/"
## ex llvm pkg became llvm14 after the 15.0 upgrade
makedepends=('cmake' 'ninja' 'libffi' 'libedit' 'ncurses' 'libxml2'
'python')
# 'python-setuptools' 'python-psutil' 'python-sphinx'
# 'python-recommonmark')
options=('staticlibs' '!lto') # Getting thousands of test failures with LTO
_source_base=https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver
source=($_source_base/llvm-$pkgver.src.tar.xz{,.sig}
llvm-coroutines-ubsan.patch)
# llvm-config.h)
prepare() {
cd llvm-$pkgver.src
mkdir build
# https://github.com/llvm/llvm-project/issues/49689
patch -Np2 -i ../llvm-coroutines-ubsan.patch
}
build() {
cd llvm-$pkgver.src/build
# Build only minimal debug info to reduce size
CFLAGS+=' -g1'
CXXFLAGS+=' -g1'
# try with build_tests off and sphinx errors off
local cmake_args=(
-G Ninja
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=/usr/lib/llvm14
-DCMAKE_SKIP_RPATH=ON
-DLLVM_BINUTILS_INCDIR=/usr/include
-DLLVM_BUILD_LLVM_DYLIB=ON
-DLLVM_BUILD_TESTS=OFF
-DLLVM_ENABLE_BINDINGS=OFF
-DLLVM_ENABLE_FFI=ON
-DLLVM_ENABLE_RTTI=ON
-DLLVM_HOST_TRIPLE=$CHOST
-DLLVM_INCLUDE_BENCHMARKS=OFF
-DLLVM_INSTALL_UTILS=ON
-DLLVM_LINK_LLVM_DYLIB=ON
-DLLVM_USE_PERF=ON
-DSPHINX_WARNINGS_AS_ERRORS=OFF
)
cmake .. "${cmake_args[@]}"
ninja
}
## almost at the end before last couple of checks it sticks and does not proceed - so skipped at this time
## the above with 13.0.0 let's see how the 13.0.1 does with the altered ninja check
## it did the same Same story with 14.0.6
#check() {
# cd llvm-$pkgver.src/build
# LD_LIBRARY_PATH=$PWD/lib ninja check
#}
package_llvm14() {
pkgdesc="Compiler infrastructure (LLVM 14)"
depends=('llvm14-libs' 'perl')
cd llvm-$pkgver.src/build
DESTDIR="$pkgdir" ninja install
# The runtime libraries go into llvm14-libs
mv -f "$pkgdir"/usr/lib/llvm14/lib/libLLVM-{14,$pkgver}.so "$srcdir/"
mv -f "$pkgdir"/usr/lib/llvm14/lib/LLVMgold.so "$srcdir/"
# Create versioned symlinks from /usr/bin/ to /usr/lib/llvm14/bin/
install -d "$pkgdir/usr/bin"
local _binary
for _binary in "$pkgdir"/usr/lib/llvm14/bin/*; do
local _basename=${_binary##*/}
ln -s ../lib/llvm14/bin/$_basename "$pkgdir/usr/bin/$_basename-14"
done
install -Dm644 ../LICENSE.TXT "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
package_llvm14-libs() {
pkgdesc="LLVM 14 runtime libraries"
depends=('gcc-libs' 'zlib' 'libffi' 'libedit' 'ncurses' 'libxml2')
install -d "$pkgdir/usr/lib/llvm14/lib"
cp -P "$srcdir"/libLLVM-{14,$pkgver}.so "$pkgdir/usr/lib/"
ln -s ../../libLLVM-14.so "$pkgdir/usr/lib/llvm14/lib/libLLVM-14.so"
ln -s ../../libLLVM-14.so "$pkgdir/usr/lib/llvm14/lib/libLLVM-$pkgver.so"
cp -P "$srcdir"/LLVMgold.so "$pkgdir/usr/lib/llvm14/lib/"
install -Dm644 "$srcdir/llvm-$pkgver.src/LICENSE.TXT" \
"$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
#---- license gpg-key sha256sums ----
license=('custom:Apache 2.0 with LLVM Exception')
validpgpkeys=(474E22316ABF4785A88C6E8EA2C794A986419D8A) # Tom Stellard <tstellar@redhat.com>
sha256sums=(050922ecaaca5781fdf6631ea92bc715183f202f9d2f15147226f023414f619a # llvm-14.0.6.src.tar.xz
98fee8942d6f8c508760d76197018b3ceb0542bcf58d061c768a3e03ceeaa6e2 # llvm-14.0.6.src.tar.xz.sig
ee9baf6df05474083857044d92f26f59d3ee709cdf82ba3bdb2792e6645f71d9) # llvm-coroutines-ubsan.patch
# 597dc5968c695bbdbb0eac9e8eb5117fcd2773bc91edf5ec103ecffffab8bc48) # llvm-config.h

100
llvm14/PKGBUILD-arch Normal file
View File

@ -0,0 +1,100 @@
# Maintainer: Evangelos Foutras <evangelos@foutrelis.com>
# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com>
pkgname=('llvm14' 'llvm14-libs')
pkgver=14.0.6
pkgrel=2
arch=('x86_64')
url="https://llvm.org/"
license=('custom:Apache 2.0 with LLVM Exception')
makedepends=('cmake' 'ninja' 'libffi' 'libedit' 'ncurses' 'libxml2'
'python')
checkdepends=('python-psutil')
options=('staticlibs' '!lto') # Getting thousands of test failures with LTO
_source_base=https://github.com/llvm/llvm-project/releases/download/llvmorg-$pkgver
source=($_source_base/llvm-$pkgver.src.tar.xz{,.sig}
llvm-coroutines-ubsan.patch)
sha256sums=('050922ecaaca5781fdf6631ea92bc715183f202f9d2f15147226f023414f619a'
'SKIP'
'ee9baf6df05474083857044d92f26f59d3ee709cdf82ba3bdb2792e6645f71d9')
validpgpkeys=('474E22316ABF4785A88C6E8EA2C794A986419D8A') # Tom Stellard <tstellar@redhat.com>
prepare() {
cd llvm-$pkgver.src
mkdir build
# https://github.com/llvm/llvm-project/issues/49689
patch -Np2 -i ../llvm-coroutines-ubsan.patch
}
build() {
cd llvm-$pkgver.src/build
# Build only minimal debug info to reduce size
CFLAGS+=' -g1'
CXXFLAGS+=' -g1'
local cmake_args=(
-G Ninja
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_INSTALL_PREFIX=/usr/lib/llvm14
-DCMAKE_SKIP_RPATH=ON
-DLLVM_BINUTILS_INCDIR=/usr/include
-DLLVM_BUILD_LLVM_DYLIB=ON
-DLLVM_BUILD_TESTS=ON
-DLLVM_ENABLE_BINDINGS=OFF
-DLLVM_ENABLE_FFI=ON
-DLLVM_ENABLE_RTTI=ON
-DLLVM_HOST_TRIPLE=$CHOST
-DLLVM_INCLUDE_BENCHMARKS=OFF
-DLLVM_INSTALL_UTILS=ON
-DLLVM_LINK_LLVM_DYLIB=ON
-DLLVM_USE_PERF=ON
)
cmake .. "${cmake_args[@]}"
ninja
}
check() {
cd llvm-$pkgver.src/build
LD_LIBRARY_PATH=$PWD/lib ninja check
}
package_llvm14() {
pkgdesc="Compiler infrastructure (LLVM 14)"
depends=('llvm14-libs' 'perl')
cd llvm-$pkgver.src/build
DESTDIR="$pkgdir" ninja install
# The runtime libraries go into llvm14-libs
mv -f "$pkgdir"/usr/lib/llvm14/lib/libLLVM-{14,$pkgver}.so "$srcdir/"
mv -f "$pkgdir"/usr/lib/llvm14/lib/LLVMgold.so "$srcdir/"
# Create versioned symlinks from /usr/bin/ to /usr/lib/llvm14/bin/
install -d "$pkgdir/usr/bin"
local _binary
for _binary in "$pkgdir"/usr/lib/llvm14/bin/*; do
local _basename=${_binary##*/}
ln -s ../lib/llvm14/bin/$_basename "$pkgdir/usr/bin/$_basename-14"
done
install -Dm644 ../LICENSE.TXT "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
package_llvm14-libs() {
pkgdesc="LLVM 14 runtime libraries"
depends=('gcc-libs' 'zlib' 'libffi' 'libedit' 'ncurses' 'libxml2')
install -d "$pkgdir/usr/lib/llvm14/lib"
cp -P "$srcdir"/libLLVM-{14,$pkgver}.so "$pkgdir/usr/lib/"
ln -s ../../libLLVM-14.so "$pkgdir/usr/lib/llvm14/lib/libLLVM-14.so"
ln -s ../../libLLVM-14.so "$pkgdir/usr/lib/llvm14/lib/libLLVM-$pkgver.so"
cp -P "$srcdir"/LLVMgold.so "$pkgdir/usr/lib/llvm14/lib/"
install -Dm644 "$srcdir/llvm-$pkgver.src/LICENSE.TXT" \
"$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
# vim:set ts=2 sw=2 et:

1
llvm14/clean Normal file
View File

@ -0,0 +1 @@
rm -rvf {src,pkg,llvm*tar.xz*}

8
llvm14/deps Normal file
View File

@ -0,0 +1,8 @@
cmake
ninja
libedit
libxml2
python

11
llvm14/deps.0 Normal file
View File

@ -0,0 +1,11 @@
ocaml
ocaml-ctypes
ocaml-findlib
python-setuptools
python-psutil
python-sphinx
cmake
ninja
libedit
libxml2

13
llvm14/deps.old Normal file
View File

@ -0,0 +1,13 @@
python-setuptools
python-psutil
python-sphinx
python-recommonmark
cmake
ninja
libedit
libxml2
makedepends=('cmake' 'ninja' 'libffi' 'libedit' 'ncurses' 'libxml2'
depends=('llvm-libs' 'perl')
depends=('gcc-libs' 'zlib' 'libffi' 'libedit' 'ncurses' 'libxml2')

View File

@ -0,0 +1,52 @@
# This patch is needed for ISPC for Xe only
# 1. Transformation of add to or is not safe for VC backend.
# 2. bswap intrinsics is not supported in VC backend yet.
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp b/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
index d01a021bf3f4..bccce825a03d 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
@@ -15,6 +15,7 @@
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
+#include "llvm/ADT/Triple.h"
#include "llvm/Analysis/InstructionSimplify.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/Constant.h"
@@ -1369,9 +1370,12 @@ Instruction *InstCombinerImpl::visitAdd(BinaryOperator &I) {
}
}
- // A+B --> A|B iff A and B have no bits set in common.
- if (haveNoCommonBitsSet(LHS, RHS, DL, &AC, &I, &DT))
- return BinaryOperator::CreateOr(LHS, RHS);
+ // Disable this transformation for ISPC SPIR-V
+ if (!Triple(I.getModule()->getTargetTriple()).isSPIR()) {
+ // A+B --> A|B iff A and B have no bits set in common.
+ if (haveNoCommonBitsSet(LHS, RHS, DL, &AC, &I, &DT))
+ return BinaryOperator::CreateOr(LHS, RHS);
+ }
// add (select X 0 (sub n A)) A --> select X A n
{
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
index 120852c44474..8de55311ce3e 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
@@ -2671,9 +2671,12 @@ Instruction *InstCombinerImpl::visitOr(BinaryOperator &I) {
if (Instruction *FoldedLogic = foldBinOpIntoSelectOrPhi(I))
return FoldedLogic;
- if (Instruction *BitOp = matchBSwapOrBitReverse(I, /*MatchBSwaps*/ true,
- /*MatchBitReversals*/ true))
- return BitOp;
+ // Disable this transformation for ISPC SPIR-V
+ if (!Triple(I.getModule()->getTargetTriple()).isSPIR()) {
+ if (Instruction *BitOp = matchBSwapOrBitReverse(I, /*MatchBSwaps*/ true,
+ /*MatchBitReversals*/ true))
+ return BitOp;
+ }
if (Instruction *Funnel = matchFunnelShift(I, *this))
return Funnel;

View File

@ -0,0 +1,23 @@
# This patch is needed for ISPC for Xe only
# It disables using of DIArgList for dbg.val if SPIR-V target is used.
# It is needed till DIArgList is supported in SPIR-V Translator.
diff --git a/llvm/lib/Transforms/Utils/Local.cpp b/llvm/lib/Transforms/Utils/Local.cpp
index d03d76f57ca1..0b86e454df57 100644
--- a/llvm/lib/Transforms/Utils/Local.cpp
+++ b/llvm/lib/Transforms/Utils/Local.cpp
@@ -1771,7 +1771,14 @@ void llvm::salvageDebugInfoForDbgValues(
} else if (isa<DbgValueInst>(DII) &&
DII->getNumVariableLocationOps() + AdditionalValues.size() <=
MaxDebugArgs) {
- DII->addVariableLocationOps(AdditionalValues, SalvagedExpr);
+ if (!Triple(I.getModule()->getTargetTriple()).isSPIR()) {
+ DII->addVariableLocationOps(AdditionalValues, SalvagedExpr);
+ } else {
+ // Do not salvage using DIArgList for dbg.val fpr SPIR-V target, as it is
+ // not currently supported by SPIR-V Translator.
+ Value *Undef = UndefValue::get(I.getOperand(0)->getType());
+ DII->replaceVariableLocationOp(I.getOperand(0), Undef);
+ }
} else {
// Do not salvage using DIArgList for dbg.addr/dbg.declare, as it is
// currently only valid for stack value expressions.

View File

@ -0,0 +1,50 @@
# Based on https://github.com/ispc/ispc/blob/main/llvm_patches/12_0_disable-A-B-A-B-and-BSWAP-in-InstCombine.patch
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp b/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
index d01a021bf3f4..bccce825a03d 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
@@ -15,6 +15,7 @@
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
+#include "llvm/ADT/Triple.h"
#include "llvm/Analysis/InstructionSimplify.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/Constant.h"
@@ -1369,9 +1370,12 @@ Instruction *InstCombinerImpl::visitAdd(BinaryOperator &I) {
}
}
- // A+B --> A|B iff A and B have no bits set in common.
- if (haveNoCommonBitsSet(LHS, RHS, DL, &AC, &I, &DT))
- return BinaryOperator::CreateOr(LHS, RHS);
+ // Disable this transformation for ISPC SPIR-V
+ if (!Triple(I.getModule()->getTargetTriple()).isSPIR()) {
+ // A+B --> A|B iff A and B have no bits set in common.
+ if (haveNoCommonBitsSet(LHS, RHS, DL, &AC, &I, &DT))
+ return BinaryOperator::CreateOr(LHS, RHS);
+ }
// add (select X 0 (sub n A)) A --> select X A n
{
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
index 120852c44474..8de55311ce3e 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
@@ -2671,9 +2671,12 @@ Instruction *InstCombinerImpl::visitOr(BinaryOperator &I) {
if (Instruction *FoldedLogic = foldBinOpIntoSelectOrPhi(I))
return FoldedLogic;
- if (Instruction *BitOp = matchBSwapOrBitReverse(I, /*MatchBSwaps*/ true,
- /*MatchBitReversals*/ true))
- return BitOp;
+ // Disable this transformation for ISPC SPIR-V
+ if (!Triple(I.getModule()->getTargetTriple()).isSPIR()) {
+ if (Instruction *BitOp = matchBSwapOrBitReverse(I, /*MatchBSwaps*/ true,
+ /*MatchBitReversals*/ true))
+ return BitOp;
+ }
if (Instruction *Funnel = matchFunnelShift(I, *this))
return Funnel;

View File

@ -0,0 +1,63 @@
From b00cff56cfb15cbfa74cb512c9cee1c402cce55b Mon Sep 17 00:00:00 2001
From: Nikita Popov <nikita.ppv@gmail.com>
Date: Thu, 8 Jul 2021 20:56:05 +0200
Subject: [PATCH] Reapply [IR] Don't accept nullptr as GEP element type
Reapply after fixing another occurrence in lldb that was relying
on this in the preceding commit.
-----
GetElementPtrInst::Create() (and IRBuilder methods based on it)
currently accept nullptr as the element type, and will fetch the
element type from the pointer in that case. Remove this fallback,
as it is incompatible with opaque pointers. I've removed a handful
of leftover calls using this behavior as a preliminary step.
Out-of-tree code affected by this change should either pass a proper
type, or can temporarily explicitly call getPointerElementType(),
if the newly added assertion is encountered.
Differential Revision: https://reviews.llvm.org/D105653
---
llvm/include/llvm/IR/Instructions.h | 20 ++++++--------------
1 file changed, 6 insertions(+), 14 deletions(-)
diff --git a/llvm/include/llvm/IR/Instructions.h b/llvm/include/llvm/IR/Instructions.h
index a5cebf0a4626..0c43a56daa33 100644
--- a/llvm/include/llvm/IR/Instructions.h
+++ b/llvm/include/llvm/IR/Instructions.h
@@ -956,13 +956,9 @@ public:
const Twine &NameStr = "",
Instruction *InsertBefore = nullptr) {
unsigned Values = 1 + unsigned(IdxList.size());
- if (!PointeeType) {
- PointeeType =
- cast<PointerType>(Ptr->getType()->getScalarType())->getElementType();
- } else {
- assert(cast<PointerType>(Ptr->getType()->getScalarType())
- ->isOpaqueOrPointeeTypeMatches(PointeeType));
- }
+ assert(PointeeType && "Must specify element type");
+ assert(cast<PointerType>(Ptr->getType()->getScalarType())
+ ->isOpaqueOrPointeeTypeMatches(PointeeType));
return new (Values) GetElementPtrInst(PointeeType, Ptr, IdxList, Values,
NameStr, InsertBefore);
}
@@ -972,13 +968,9 @@ public:
const Twine &NameStr,
BasicBlock *InsertAtEnd) {
unsigned Values = 1 + unsigned(IdxList.size());
- if (!PointeeType) {
- PointeeType =
- cast<PointerType>(Ptr->getType()->getScalarType())->getElementType();
- } else {
- assert(cast<PointerType>(Ptr->getType()->getScalarType())
- ->isOpaqueOrPointeeTypeMatches(PointeeType));
- }
+ assert(PointeeType && "Must specify element type");
+ assert(cast<PointerType>(Ptr->getType()->getScalarType())
+ ->isOpaqueOrPointeeTypeMatches(PointeeType));
return new (Values) GetElementPtrInst(PointeeType, Ptr, IdxList, Values,
NameStr, InsertAtEnd);
}

View File

@ -0,0 +1,91 @@
From e7c9a6cae09d99388d8384ca7c0fb5b24b353975 Mon Sep 17 00:00:00 2001
From: Nikita Popov <npopov@redhat.com>
Date: Mon, 17 Jan 2022 15:48:01 +0100
Subject: [PATCH] [SDAG] Don't move DBG_VALUE instructions after insertion
point during scheduling (PR53243)
EmitSchedule() shouldn't be touching instructions after the provided
insertion point. The change introduced in D83561 performs a scan to
the end of the block, and thus may move unrelated instructions. In
particular, this ends up moving instructions that have been produced
by FastISel and will later be deleted. Moving them means that more
instructions than intended are removed.
Fix this by stopping the iteration when the insertion point is
reached.
Fixes https://github.com/llvm/llvm-project/issues/53243.
Differential Revision: https://reviews.llvm.org/D117489
---
.../SelectionDAG/ScheduleDAGSDNodes.cpp | 7 ++--
.../CodeGen/X86/pr53243-tail-call-fastisel.ll | 39 +++++++++++++++++++
2 files changed, 43 insertions(+), 3 deletions(-)
create mode 100644 llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll
diff --git a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
index bec240d6c4d4..403f34573899 100644
--- a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
@@ -1057,12 +1057,13 @@ EmitSchedule(MachineBasicBlock::iterator &InsertPos) {
"first terminator cannot be a debug value");
for (MachineInstr &MI : make_early_inc_range(
make_range(std::next(FirstTerm), InsertBB->end()))) {
+ // Only scan up to insertion point.
+ if (&MI == InsertPos)
+ break;
+
if (!MI.isDebugValue())
continue;
- if (&MI == InsertPos)
- InsertPos = std::prev(InsertPos->getIterator());
-
// The DBG_VALUE was referencing a value produced by a terminator. By
// moving the DBG_VALUE, the referenced value also needs invalidating.
MI.getOperand(0).ChangeToRegister(0, false);
diff --git a/llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll b/llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll
new file mode 100644
index 000000000000..333eff8fb008
--- /dev/null
+++ b/llvm/test/CodeGen/X86/pr53243-tail-call-fastisel.ll
@@ -0,0 +1,39 @@
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc -O0 -fast-isel -mtriple=x86_64-- < %s | FileCheck %s
+
+define void @test() {
+; CHECK-LABEL: test:
+; CHECK: # %bb.0:
+; CHECK-NEXT: jmp set_state@PLT # TAILCALL
+ tail call void @set_state()
+ call void @llvm.dbg.value(metadata i64 0, metadata !10, metadata !DIExpression()), !dbg !16
+ ret void
+}
+
+declare void @set_state()
+
+; Function Attrs: nofree nosync nounwind readnone speculatable willreturn
+declare void @llvm.dbg.value(metadata, metadata, metadata) #0
+
+attributes #0 = { nofree nosync nounwind readnone speculatable willreturn }
+
+!llvm.module.flags = !{!0}
+!llvm.dbg.cu = !{!1}
+
+!0 = !{i32 2, !"Debug Info Version", i32 3}
+!1 = distinct !DICompileUnit(language: DW_LANG_Rust, file: !2, producer: "clang LLVM (rustc version 1.60.0-nightly (ec4bcaac4 2022-01-15))", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !3)
+!2 = !DIFile(filename: "src/lib.rs/@/bug.63e521cd-cgu.0", directory: "/tmp/rust-bug")
+!3 = !{!4}
+!4 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "Option", file: !5, baseType: !6, size: 8, align: 8, flags: DIFlagEnumClass, elements: !7)
+!5 = !DIFile(filename: "<unknown>", directory: "")
+!6 = !DIBasicType(name: "u8", size: 8, encoding: DW_ATE_unsigned)
+!7 = !{!8, !9}
+!8 = !DIEnumerator(name: "None", value: 0)
+!9 = !DIEnumerator(name: "Some", value: 1)
+!10 = !DILocalVariable(name: "msg", arg: 2, scope: !11, file: !12, line: 689, type: !6)
+!11 = distinct !DISubprogram(name: "expect<()>", linkageName: "_ZN4core6option15Option$LT$T$GT$6expect17h9a574c18f194c213E", scope: !4, file: !12, line: 689, type: !13, scopeLine: 689, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !1, templateParams: !15, retainedNodes: !15)
+!12 = !DIFile(filename: "/rustc/ec4bcaac450279b029f3480b8b8f1b82ab36a5eb/library/core/src/option.rs", directory: "", checksumkind: CSK_MD5, checksum: "4120c8557937a0772190a676ec193800")
+!13 = !DISubroutineType(types: !14)
+!14 = !{null, !4}
+!15 = !{}
+!16 = !DILocation(line: 0, scope: !11)

View File

@ -0,0 +1,540 @@
From 4a7c9b7d6f4a183fef8f43aef004ec865c37bbd8 Mon Sep 17 00:00:00 2001
From: Hans Wennborg <hans@chromium.org>
Date: Thu, 13 Jan 2022 11:31:11 +0100
Subject: [PATCH 1/2] Simplify llvm/test/Transforms/Inline/inline_ssp.ll (NFC)
The nounwind and uwtable attributes were just cluttering up the test.
Using regexes to give symbolic names to the attribute lists make the
test more readable.
This is pre-committing parts of D116589.
(cherry picked from commit 2eb7d8d749997e5f3048d39201a4d38b6b8d6455)
---
llvm/test/Transforms/Inline/inline_ssp.ll | 81 +++++++++++------------
1 file changed, 40 insertions(+), 41 deletions(-)
diff --git a/llvm/test/Transforms/Inline/inline_ssp.ll b/llvm/test/Transforms/Inline/inline_ssp.ll
index 2bf93d322842..ccfe93453159 100644
--- a/llvm/test/Transforms/Inline/inline_ssp.ll
+++ b/llvm/test/Transforms/Inline/inline_ssp.ll
@@ -12,150 +12,149 @@
; propagated correctly. The caller should have its SSP attribute set as:
; strictest(caller-ssp-attr, callee-ssp-attr), where strictness is ordered as:
; sspreq > sspstrong > ssp > [no ssp]
-define internal void @fun_sspreq() nounwind sspreq uwtable {
+define internal void @fun_sspreq() sspreq {
entry:
%call = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str3, i32 0, i32 0))
ret void
}
-define internal void @fun_sspstrong() nounwind sspstrong uwtable {
+define internal void @fun_sspstrong() sspstrong {
entry:
%call = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str2, i32 0, i32 0))
ret void
}
-define internal void @fun_ssp() nounwind ssp uwtable {
+define internal void @fun_ssp() ssp {
entry:
%call = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str1, i32 0, i32 0))
ret void
}
-define internal void @fun_nossp() nounwind uwtable {
+define internal void @fun_nossp() {
entry:
%call = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str, i32 0, i32 0))
ret void
}
-; Tests start below
+; Tests start below.
-define void @inline_req_req() nounwind sspreq uwtable {
+define void @inline_req_req() sspreq {
entry:
-; CHECK: @inline_req_req() #0
+; CHECK: @inline_req_req() #[[SSPREQ:[0-9]]]
call void @fun_sspreq()
ret void
}
-define void @inline_req_strong() nounwind sspstrong uwtable {
+define void @inline_req_strong() sspstrong {
entry:
-; CHECK: @inline_req_strong() #0
+; CHECK: @inline_req_strong() #[[SSPREQ]]
call void @fun_sspreq()
ret void
}
-define void @inline_req_ssp() nounwind ssp uwtable {
+define void @inline_req_ssp() ssp {
entry:
-; CHECK: @inline_req_ssp() #0
+; CHECK: @inline_req_ssp() #[[SSPREQ]]
call void @fun_sspreq()
ret void
}
-define void @inline_req_nossp() nounwind uwtable {
+define void @inline_req_nossp() {
entry:
-; CHECK: @inline_req_nossp() #3
+; CHECK: @inline_req_nossp() {
call void @fun_sspreq()
ret void
}
-define void @inline_strong_req() nounwind sspreq uwtable {
+define void @inline_strong_req() sspreq {
entry:
-; CHECK: @inline_strong_req() #0
+; CHECK: @inline_strong_req() #[[SSPREQ]]
call void @fun_sspstrong()
ret void
}
-define void @inline_strong_strong() nounwind sspstrong uwtable {
+define void @inline_strong_strong() sspstrong {
entry:
-; CHECK: @inline_strong_strong() #1
+; CHECK: @inline_strong_strong() #[[SSPSTRONG:[0-9]]]
call void @fun_sspstrong()
ret void
}
-define void @inline_strong_ssp() nounwind ssp uwtable {
+define void @inline_strong_ssp() ssp {
entry:
-; CHECK: @inline_strong_ssp() #1
+; CHECK: @inline_strong_ssp() #[[SSPSTRONG]]
call void @fun_sspstrong()
ret void
}
-define void @inline_strong_nossp() nounwind uwtable {
+define void @inline_strong_nossp() {
entry:
-; CHECK: @inline_strong_nossp() #3
+; CHECK: @inline_strong_nossp() {
call void @fun_sspstrong()
ret void
}
-define void @inline_ssp_req() nounwind sspreq uwtable {
+define void @inline_ssp_req() sspreq {
entry:
-; CHECK: @inline_ssp_req() #0
+; CHECK: @inline_ssp_req() #[[SSPREQ]]
call void @fun_ssp()
ret void
}
-define void @inline_ssp_strong() nounwind sspstrong uwtable {
+define void @inline_ssp_strong() sspstrong {
entry:
-; CHECK: @inline_ssp_strong() #1
+; CHECK: @inline_ssp_strong() #[[SSPSTRONG]]
call void @fun_ssp()
ret void
}
-define void @inline_ssp_ssp() nounwind ssp uwtable {
+define void @inline_ssp_ssp() ssp {
entry:
-; CHECK: @inline_ssp_ssp() #2
+; CHECK: @inline_ssp_ssp() #[[SSP:[0-9]]]
call void @fun_ssp()
ret void
}
-define void @inline_ssp_nossp() nounwind uwtable {
+define void @inline_ssp_nossp() {
entry:
-; CHECK: @inline_ssp_nossp() #3
+; CHECK: @inline_ssp_nossp() {
call void @fun_ssp()
ret void
}
-define void @inline_nossp_req() nounwind uwtable sspreq {
+define void @inline_nossp_req() sspreq {
entry:
-; CHECK: @inline_nossp_req() #0
+; CHECK: @inline_nossp_req() #[[SSPREQ]]
call void @fun_nossp()
ret void
}
-define void @inline_nossp_strong() nounwind sspstrong uwtable {
+define void @inline_nossp_strong() sspstrong {
entry:
-; CHECK: @inline_nossp_strong() #1
+; CHECK: @inline_nossp_strong() #[[SSPSTRONG]]
call void @fun_nossp()
ret void
}
-define void @inline_nossp_ssp() nounwind ssp uwtable {
+define void @inline_nossp_ssp() ssp {
entry:
-; CHECK: @inline_nossp_ssp() #2
+; CHECK: @inline_nossp_ssp() #[[SSP]]
call void @fun_nossp()
ret void
}
-define void @inline_nossp_nossp() nounwind uwtable {
+define void @inline_nossp_nossp() {
entry:
-; CHECK: @inline_nossp_nossp() #3
+; CHECK: @inline_nossp_nossp() {
call void @fun_nossp()
ret void
}
declare i32 @printf(i8*, ...)
-; CHECK: attributes #0 = { nounwind sspreq uwtable }
-; CHECK: attributes #1 = { nounwind sspstrong uwtable }
-; CHECK: attributes #2 = { nounwind ssp uwtable }
-; CHECK: attributes #3 = { nounwind uwtable }
+; CHECK: attributes #[[SSPREQ]] = { sspreq }
+; CHECK: attributes #[[SSPSTRONG]] = { sspstrong }
+; CHECK: attributes #[[SSP]] = { ssp }
From b52296ecaa3878648ceeb3aa39df05dc71e44597 Mon Sep 17 00:00:00 2001
From: Hans Wennborg <hans@chromium.org>
Date: Mon, 3 Jan 2022 18:03:43 +0100
Subject: [PATCH 2/2] Don't override __attribute__((no_stack_protector)) by
inlining (PR52886)
Since 26c6a3e736d3, LLVM's inliner will "upgrade" the caller's stack protector
attribute based on the callee. This lead to surprising results with Clang's
no_stack_protector attribute added in 4fbf84c1732f (D46300). Consider the
following code compiled with clang -fstack-protector-strong -Os
(https://godbolt.org/z/7s3rW7a1q).
extern void h(int* p);
inline __attribute__((always_inline)) int g() {
return 0;
}
int __attribute__((__no_stack_protector__)) f() {
int a[1];
h(a);
return g();
}
LLVM will inline g() into f(), and f() would get a stack protector, against the
users explicit wishes, potentially breaking the program e.g. if h() changes the
value of the stack cookie. That's a miscompile.
More recently, bc044a88ee3c (D91816) addressed this problem by preventing
inlining when the stack protector is disabled in the caller and enabled in the
callee or vice versa. However, the problem remained if the callee is marked
always_inline as in the example above. This affected users, see e.g.
http://crbug.com/1274129 and http://llvm.org/pr52886.
One way to fix this would be to prevent inlining also in the always_inline
case. Despite the name, always_inline does not guarantee inlining, so this
would be legal but potentially surprising to users.
However, I think the better fix is to not enable the stack protector in a
caller based on the callee. The motivation for the old behaviour is unclear, it
seems counter-intuitive, and causes real problems as we've seen.
This commit implements that fix, which means in the example above, g() gets
inlined into f() (also without always_inline), and f() is emitted without stack
protector. I think that matches most developers' expectations, and that's also
what GCC does.
Another effect of this change is that a no_stack_protector function can now be
inlined into a stack protected function, e.g. (https://godbolt.org/z/hafP6W856):
extern void h(int* p);
inline int __attribute__((__no_stack_protector__)) __attribute__((always_inline)) g() {
return 0;
}
int f() {
int a[1];
h(a);
return g();
}
I think that's fine. Such code would be unusual since no_stack_protector is
normally applied to a program entry point which sets up the stack canary. And
even if such code exists, inlining doesn't change the semantics: there is still
no stack cookie setup/check around entry/exit of the g() code region, but there
may be in the surrounding context, as there was before inlining. This also
matches GCC.
See also the discussion at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94722
Differential revision: https://reviews.llvm.org/D116589
(cherry picked from commit 2bc57d85ebf244f19a3046295b58eb8c667f947d)
---
llvm/docs/LangRef.rst | 26 +++++------
llvm/lib/Analysis/InlineCost.cpp | 9 ----
llvm/lib/IR/Attributes.cpp | 6 +++
llvm/test/ThinLTO/X86/nossp.ll | 23 ++++++----
llvm/test/Transforms/Inline/inline_nossp.ll | 50 ---------------------
llvm/test/Transforms/Inline/inline_ssp.ll | 19 +++++++-
6 files changed, 48 insertions(+), 85 deletions(-)
delete mode 100644 llvm/test/Transforms/Inline/inline_nossp.ll
diff --git a/llvm/docs/LangRef.rst b/llvm/docs/LangRef.rst
index 36e09355e485..69393eba3906 100644
--- a/llvm/docs/LangRef.rst
+++ b/llvm/docs/LangRef.rst
@@ -1965,11 +1965,9 @@ example:
Variables that are identified as requiring a protector will be arranged
on the stack such that they are adjacent to the stack protector guard.
- A function with the ``ssp`` attribute but without the ``alwaysinline``
- attribute cannot be inlined into a function without a
- ``ssp/sspreq/sspstrong`` attribute. If inlined, the caller will get the
- ``ssp`` attribute. ``call``, ``invoke``, and ``callbr`` instructions with
- the ``alwaysinline`` attribute force inlining.
+ If a function with an ``ssp`` attribute is inlined into a calling function,
+ the attribute is not carried over to the calling function.
+
``sspstrong``
This attribute indicates that the function should emit a stack smashing
protector. This attribute causes a strong heuristic to be used when
@@ -1994,12 +1992,10 @@ example:
This overrides the ``ssp`` function attribute.
- A function with the ``sspstrong`` attribute but without the
- ``alwaysinline`` attribute cannot be inlined into a function without a
- ``ssp/sspstrong/sspreq`` attribute. If inlined, the caller will get the
- ``sspstrong`` attribute unless the ``sspreq`` attribute exists. ``call``,
- ``invoke``, and ``callbr`` instructions with the ``alwaysinline`` attribute
- force inlining.
+ If a function with an ``sspstrong`` attribute is inlined into a calling
+ function which has an ``ssp`` attribute, the calling function's attribute
+ will be upgraded to ``sspstrong``.
+
``sspreq``
This attribute indicates that the function should *always* emit a stack
smashing protector. This overrides the ``ssp`` and ``sspstrong`` function
@@ -2016,11 +2012,9 @@ example:
#. Variables that have had their address taken are 3rd closest to the
protector.
- A function with the ``sspreq`` attribute but without the ``alwaysinline``
- attribute cannot be inlined into a function without a
- ``ssp/sspstrong/sspreq`` attribute. If inlined, the caller will get the
- ``sspreq`` attribute. ``call``, ``invoke``, and ``callbr`` instructions
- with the ``alwaysinline`` attribute force inlining.
+ If a function with an ``sspreq`` attribute is inlined into a calling
+ function which has an ``ssp`` or ``sspstrong`` attribute, the calling
+ function's attribute will be upgraded to ``sspreq``.
``strictfp``
This attribute indicates that the function was called from a scope that
diff --git a/llvm/lib/Analysis/InlineCost.cpp b/llvm/lib/Analysis/InlineCost.cpp
index e8f79a28a8e8..1e68ec8ff7d6 100644
--- a/llvm/lib/Analysis/InlineCost.cpp
+++ b/llvm/lib/Analysis/InlineCost.cpp
@@ -2823,15 +2823,6 @@ Optional<InlineResult> llvm::getAttributeBasedInliningDecision(
if (Call.isNoInline())
return InlineResult::failure("noinline call site attribute");
- // Don't inline functions if one does not have any stack protector attribute
- // but the other does.
- if (Caller->hasStackProtectorFnAttr() && !Callee->hasStackProtectorFnAttr())
- return InlineResult::failure(
- "stack protected caller but callee requested no stack protector");
- if (Callee->hasStackProtectorFnAttr() && !Caller->hasStackProtectorFnAttr())
- return InlineResult::failure(
- "stack protected callee but caller requested no stack protector");
-
return None;
}
diff --git a/llvm/lib/IR/Attributes.cpp b/llvm/lib/IR/Attributes.cpp
index 5cd1bafccc47..eec4629aa725 100644
--- a/llvm/lib/IR/Attributes.cpp
+++ b/llvm/lib/IR/Attributes.cpp
@@ -1957,6 +1957,12 @@ static void setOR(Function &Caller, const Function &Callee) {
/// If the inlined function had a higher stack protection level than the
/// calling function, then bump up the caller's stack protection level.
static void adjustCallerSSPLevel(Function &Caller, const Function &Callee) {
+ // If the calling function has *no* stack protection level (e.g. it was built
+ // with Clang's -fno-stack-protector or no_stack_protector attribute), don't
+ // change it as that could change the program's semantics.
+ if (!Caller.hasStackProtectorFnAttr())
+ return;
+
// If upgrading the SSP attribute, clear out the old SSP Attributes first.
// Having multiple SSP attributes doesn't actually hurt, but it adds useless
// clutter to the IR.
diff --git a/llvm/test/ThinLTO/X86/nossp.ll b/llvm/test/ThinLTO/X86/nossp.ll
index c542a85c6f74..cfc54d595ad7 100644
--- a/llvm/test/ThinLTO/X86/nossp.ll
+++ b/llvm/test/ThinLTO/X86/nossp.ll
@@ -23,7 +23,8 @@ declare void @ssp_callee() ssp
; nossp caller should be able to inline nossp callee.
define void @nossp_caller() {
-; CHECK-LABEL: @nossp_caller
+; CHECK-LABEL: define void @nossp_caller()
+; CHECK-NOT: #0
; CHECK-NEXT: tail call void @foo
tail call void @nossp_callee()
ret void
@@ -31,28 +32,34 @@ define void @nossp_caller() {
; ssp caller should be able to inline ssp callee.
define void @ssp_caller() ssp {
-; CHECK-LABEL: @ssp_caller
+; CHECK-LABEL: define void @ssp_caller()
+; CHECK-SAME: #0
; CHECK-NEXT: tail call void @foo
tail call void @ssp_callee()
ret void
}
-; nossp caller should *NOT* be able to inline ssp callee.
+; nossp caller should be able to inline ssp callee.
+; the ssp attribute is not propagated.
define void @nossp_caller2() {
-; CHECK-LABEL: @nossp_caller2
-; CHECK-NEXT: tail call void @ssp_callee
+; CHECK-LABEL: define void @nossp_caller2()
+; CHECK-NOT: #0
+; CHECK-NEXT: tail call void @foo
tail call void @ssp_callee()
ret void
}
-; ssp caller should *NOT* be able to inline nossp callee.
+; ssp caller should be able to inline nossp callee.
define void @ssp_caller2() ssp {
-; CHECK-LABEL: @ssp_caller2
-; CHECK-NEXT: tail call void @nossp_callee
+; CHECK-LABEL: define void @ssp_caller2()
+; CHECK-SAME: #0
+; CHECK-NEXT: tail call void @foo
tail call void @nossp_callee()
ret void
}
+; CHECK: attributes #0 = { ssp }
+
;--- b.ll
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-pc-linux-gnu"
diff --git a/llvm/test/Transforms/Inline/inline_nossp.ll b/llvm/test/Transforms/Inline/inline_nossp.ll
deleted file mode 100644
index 24fdab0b9f13..000000000000
--- a/llvm/test/Transforms/Inline/inline_nossp.ll
+++ /dev/null
@@ -1,50 +0,0 @@
-; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
-; RUN: opt -passes='cgscc(inline)' %s -S -pass-remarks-missed=inline 2>&1 | FileCheck --check-prefixes=CHECK,CHECK-INLINE %s
-; RUN: opt -passes=always-inline -o - -S %s | FileCheck %s
-
-; CHECK-INLINE: ssp not inlined into nossp_caller because it should never be inlined (cost=never): stack protected callee but caller requested no stack protector
-; CHECK-INLINE: nossp not inlined into ssp_caller because it should never be inlined (cost=never): stack protected caller but callee requested no stack protector
-
-; Not interesting to test.
-define i32 @nossp() { ret i32 41 }
-define i32 @ssp() sspstrong { ret i32 42 }
-define i32 @nossp_alwaysinline() alwaysinline { ret i32 43 }
-define i32 @ssp_alwaysinline() sspstrong alwaysinline { ret i32 44 }
-
-; @ssp should not be inlined due to mismatch stack protector.
-; @ssp_alwaysinline should be inlined due to alwaysinline.
-define i32 @nossp_caller() {
-; CHECK-LABEL: @nossp_caller(
-; CHECK-NEXT: [[TMP1:%.*]] = call i32 @ssp()
-; CHECK-NEXT: ret i32 44
-;
- call i32 @ssp()
- %2 = call i32 @ssp_alwaysinline()
- ret i32 %2
-}
-; @nossp should not be inlined due to mismatch stack protector.
-; @nossp_alwaysinline should be inlined due to alwaysinline.
-define i32 @ssp_caller() sspstrong {
-; CHECK-LABEL: @ssp_caller(
-; CHECK-NEXT: [[TMP1:%.*]] = call i32 @nossp()
-; CHECK-NEXT: ret i32 43
-;
- call i32 @nossp()
- %2 = call i32 @nossp_alwaysinline()
- ret i32 %2
-}
-
-; The alwaysinline attribute can also appear on the CallBase (ie. the call
-; site), ie. when __attribute__((flatten)) is used on the caller. Treat this
-; the same as if the caller had the fn attr alwaysinline and permit inline
-; substitution, despite the mismatch between caller and callee on ssp attrs.
-;
-; Curiously, the always_inline attribute on a CallInst is only expanded by the
-; inline pass, but not always_inline pass!
-define i32 @nossp_alwaysinline_caller() {
-; CHECK-INLINE-LABEL: @nossp_alwaysinline_caller(
-; CHECK-INLINE-NEXT: ret i32 42
-;
- %1 = call i32 @ssp() alwaysinline
- ret i32 %1
-}
diff --git a/llvm/test/Transforms/Inline/inline_ssp.ll b/llvm/test/Transforms/Inline/inline_ssp.ll
index ccfe93453159..a4f73f4dcd5a 100644
--- a/llvm/test/Transforms/Inline/inline_ssp.ll
+++ b/llvm/test/Transforms/Inline/inline_ssp.ll
@@ -9,15 +9,23 @@
; These first four functions (@fun_sspreq, @fun_sspstrong, @fun_ssp, @fun_nossp)
; are used by the remaining functions to ensure that the SSP attributes are
-; propagated correctly. The caller should have its SSP attribute set as:
+; propagated correctly. If the caller had an SSP attribute before inlining, it
+; should have its new SSP attribute set as:
; strictest(caller-ssp-attr, callee-ssp-attr), where strictness is ordered as:
-; sspreq > sspstrong > ssp > [no ssp]
+; sspreq > sspstrong > ssp
+
define internal void @fun_sspreq() sspreq {
entry:
%call = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str3, i32 0, i32 0))
ret void
}
+define internal void @fun_sspreq_alwaysinline() sspreq alwaysinline {
+entry:
+ %call = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str3, i32 0, i32 0))
+ ret void
+}
+
define internal void @fun_sspstrong() sspstrong {
entry:
%call = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str2, i32 0, i32 0))
@@ -66,6 +74,13 @@ entry:
ret void
}
+define void @alwaysinline_req_nossp() {
+entry:
+; CHECK: @alwaysinline_req_nossp() {
+ call void @fun_sspreq_alwaysinline()
+ ret void
+}
+
define void @inline_strong_req() sspreq {
entry:
; CHECK: @inline_strong_req() #[[SSPREQ]]

11
llvm14/failed.tests Normal file
View File

@ -0,0 +1,11 @@
Failed Tests (1):
LLVM :: tools/llvm-cov/ignore-filename-regex.test
Testing Time: 899.20s
Unsupported : 1249
Passed : 45662
Expectedly Failed: 151
Failed : 1

1
llvm14/key Normal file
View File

@ -0,0 +1 @@
gpg -v --recv-key A2C794A986419D8A

9
llvm14/llvm-config.h Normal file
View File

@ -0,0 +1,9 @@
#include <bits/wordsize.h>
#if __WORDSIZE == 32
#include "llvm-config-32.h"
#elif __WORDSIZE == 64
#include "llvm-config-64.h"
#else
#error "Unknown word size"
#endif

View File

@ -0,0 +1,288 @@
From 1030297d77ae5110b7873530f645aeec3a4264ba Mon Sep 17 00:00:00 2001
From: Yuanfang Chen <yuanfang.chen@sony.com>
Date: Mon, 27 Jun 2022 11:33:45 -0700
Subject: [PATCH 1/2] [ubsan] Using metadata instead of prologue data for
function sanitizer
Information in the function `Prologue Data` is intentionally opaque.
When a function with `Prologue Data` is duplicated. The self (global
value) references inside `Prologue Data` is still pointing to the
original function. This may cause errors like `fatal error: error in backend: Cannot represent a difference across sections`.
This patch detaches the information from function `Prologue Data`
and attaches it to a function metadata node.
This and D116130 fix https://github.com/llvm/llvm-project/issues/49689.
Reviewed By: pcc
Differential Revision: https://reviews.llvm.org/D115844
(cherry picked from commit 6678f8e505b19069a9dbdc3e3ee088d543752412)
---
llvm/docs/LangRef.rst | 22 ++++++++++++++++++-
llvm/include/llvm/IR/FixedMetadataKinds.def | 1 +
llvm/include/llvm/IR/MDBuilder.h | 4 ++++
llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp | 18 +++++++++++++++
llvm/lib/IR/MDBuilder.cpp | 8 +++++++
.../Instrumentation/AddressSanitizer.cpp | 10 ++++-----
llvm/test/CodeGen/X86/func-sanitizer.ll | 18 +++++++++++++++
7 files changed, 75 insertions(+), 6 deletions(-)
create mode 100644 llvm/test/CodeGen/X86/func-sanitizer.ll
diff --git a/llvm/docs/LangRef.rst b/llvm/docs/LangRef.rst
index 920834b10897..a5a84a2f297b 100644
--- a/llvm/docs/LangRef.rst
+++ b/llvm/docs/LangRef.rst
@@ -5194,7 +5194,7 @@ multiple metadata attachments with the same identifier.
A transformation is required to drop any metadata attachment that it does not
know or know it can't preserve. Currently there is an exception for metadata
-attachment to globals for ``!type`` and ``!absolute_symbol`` which can't be
+attachment to globals for ``!func_sanitize``, ``!type`` and ``!absolute_symbol`` which can't be
unconditionally dropped unless the global is itself deleted.
Metadata attached to a module using named metadata may not be dropped, with
@@ -7080,6 +7080,26 @@ Example:
%a.addr = alloca float*, align 8, !annotation !0
!0 = !{!"auto-init"}
+'``func_sanitize``' Metadata
+^^^^^^^^^^^^^^^^^^^^^^^^^
+
+The ``func_sanitize`` metadata is used to attach two values for the function
+sanitizer instrumentation. The first value is the ubsan function signature.
+The second value is the address of the proxy variable which stores the address
+of the RTTI descriptor. If :ref:`prologue <prologuedata>` and '``func_sanitize``'
+are used at the same time, :ref:`prologue <prologuedata>` is emitted before
+'``func_sanitize``' in the output.
+
+Example:
+
+.. code-block:: text
+
+ @__llvm_rtti_proxy = private unnamed_addr constant i8* bitcast ({ i8*, i8* }* @_ZTIFvvE to i8*)
+ define void @_Z3funv() !func_sanitize !0 {
+ return void
+ }
+ !0 = !{i32 846595819, i8** @__llvm_rtti_proxy}
+
Module Flags Metadata
=====================
diff --git a/llvm/include/llvm/IR/FixedMetadataKinds.def b/llvm/include/llvm/IR/FixedMetadataKinds.def
index 31979cd2f9db..baa7a91cbf56 100644
--- a/llvm/include/llvm/IR/FixedMetadataKinds.def
+++ b/llvm/include/llvm/IR/FixedMetadataKinds.def
@@ -42,3 +42,4 @@ LLVM_FIXED_MD_KIND(MD_preserve_access_index, "llvm.preserve.access.index", 27)
LLVM_FIXED_MD_KIND(MD_vcall_visibility, "vcall_visibility", 28)
LLVM_FIXED_MD_KIND(MD_noundef, "noundef", 29)
LLVM_FIXED_MD_KIND(MD_annotation, "annotation", 30)
+LLVM_FIXED_MD_KIND(MD_func_sanitize, "func_sanitize", 31)
diff --git a/llvm/include/llvm/IR/MDBuilder.h b/llvm/include/llvm/IR/MDBuilder.h
index 42829388b79a..21d7b8b6da71 100644
--- a/llvm/include/llvm/IR/MDBuilder.h
+++ b/llvm/include/llvm/IR/MDBuilder.h
@@ -108,6 +108,10 @@ public:
/// Merge the new callback encoding \p NewCB into \p ExistingCallbacks.
MDNode *mergeCallbackEncodings(MDNode *ExistingCallbacks, MDNode *NewCB);
+ /// Return metadata feeding to the CodeGen about how to generate a function
+ /// prologue for the "function" santizier.
+ MDNode *createRTTIPointerPrologue(Constant *PrologueSig, Constant *RTTI);
+
//===------------------------------------------------------------------===//
// AA metadata.
//===------------------------------------------------------------------===//
diff --git a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
index 3e8e190eecc3..091f16567a36 100644
--- a/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
@@ -844,6 +844,24 @@ void AsmPrinter::emitFunctionHeader() {
// Emit the prologue data.
if (F.hasPrologueData())
emitGlobalConstant(F.getParent()->getDataLayout(), F.getPrologueData());
+
+ // Emit the function prologue data for the indirect call sanitizer.
+ if (const MDNode *MD = F.getMetadata(LLVMContext::MD_func_sanitize)) {
+ assert(TM.getTargetTriple().getArch() == Triple::x86 ||
+ TM.getTargetTriple().getArch() == Triple::x86_64);
+ assert(MD->getNumOperands() == 2);
+
+ auto *PrologueSig = mdconst::extract<Constant>(MD->getOperand(0));
+ auto *FTRTTIProxy = mdconst::extract<Constant>(MD->getOperand(1));
+ assert(PrologueSig && FTRTTIProxy);
+ emitGlobalConstant(F.getParent()->getDataLayout(), PrologueSig);
+
+ const MCExpr *Proxy = lowerConstant(FTRTTIProxy);
+ const MCExpr *FnExp = MCSymbolRefExpr::create(CurrentFnSym, OutContext);
+ const MCExpr *PCRel = MCBinaryExpr::createSub(Proxy, FnExp, OutContext);
+ // Use 32 bit since only small code model is supported.
+ OutStreamer->emitValue(PCRel, 4u);
+ }
}
/// EmitFunctionEntryLabel - Emit the label that is the entrypoint for the
diff --git a/llvm/lib/IR/MDBuilder.cpp b/llvm/lib/IR/MDBuilder.cpp
index 35af8490287b..fc59fda9fe22 100644
--- a/llvm/lib/IR/MDBuilder.cpp
+++ b/llvm/lib/IR/MDBuilder.cpp
@@ -150,6 +150,14 @@ MDNode *MDBuilder::mergeCallbackEncodings(MDNode *ExistingCallbacks,
return MDNode::get(Context, Ops);
}
+MDNode *MDBuilder::createRTTIPointerPrologue(Constant *PrologueSig,
+ Constant *RTTI) {
+ SmallVector<Metadata *, 4> Ops;
+ Ops.push_back(createConstant(PrologueSig));
+ Ops.push_back(createConstant(RTTI));
+ return MDNode::get(Context, Ops);
+}
+
MDNode *MDBuilder::createAnonymousAARoot(StringRef Name, MDNode *Extra) {
SmallVector<Metadata *, 3> Args(1, nullptr);
if (Extra)
diff --git a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp b/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
index 8f94172a6402..9d11ef26c1f0 100644
--- a/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
+++ b/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
@@ -1405,7 +1405,11 @@ static GlobalVariable *createPrivateGlobalForSourceLoc(Module &M,
/// Check if \p G has been created by a trusted compiler pass.
static bool GlobalWasGeneratedByCompiler(GlobalVariable *G) {
// Do not instrument @llvm.global_ctors, @llvm.used, etc.
- if (G->getName().startswith("llvm."))
+ if (G->getName().startswith("llvm.") ||
+ // Do not instrument gcov counter arrays.
+ G->getName().startswith("__llvm_gcov_ctr") ||
+ // Do not instrument rtti proxy symbols for function sanitizer.
+ G->getName().startswith("__llvm_rtti_proxy"))
return true;
// Do not instrument asan globals.
@@ -1414,10 +1418,6 @@ static bool GlobalWasGeneratedByCompiler(GlobalVariable *G) {
G->getName().startswith(kODRGenPrefix))
return true;
- // Do not instrument gcov counter arrays.
- if (G->getName() == "__llvm_gcov_ctr")
- return true;
-
return false;
}
diff --git a/llvm/test/CodeGen/X86/func-sanitizer.ll b/llvm/test/CodeGen/X86/func-sanitizer.ll
new file mode 100644
index 000000000000..b8d96a346d0c
--- /dev/null
+++ b/llvm/test/CodeGen/X86/func-sanitizer.ll
@@ -0,0 +1,18 @@
+; RUN: llc -mtriple=x86_64-unknown-linux-gnu < %s | FileCheck %s
+
+; CHECK: _Z3funv:
+; CHECK: .cfi_startproc
+; CHECK: .long 846595819
+; CHECK: .long .L__llvm_rtti_proxy-_Z3funv
+; CHECK: .L__llvm_rtti_proxy:
+; CHECK: .quad i
+; CHECK: .size .L__llvm_rtti_proxy, 8
+
+@i = linkonce_odr constant i32 1
+@__llvm_rtti_proxy = private unnamed_addr constant i32* @i
+
+define dso_local void @_Z3funv() !func_sanitize !0 {
+ ret void
+}
+
+!0 = !{i32 846595819, i32** @__llvm_rtti_proxy}
From 640a28cc0fe12741daa4c22f34b618ad57195528 Mon Sep 17 00:00:00 2001
From: Yuanfang Chen <yuanfang.chen@sony.com>
Date: Mon, 27 Jun 2022 11:36:32 -0700
Subject: [PATCH 2/2] [Coroutine] Remove the '!func_sanitize' metadata for
split functions
There is no proper RTTI for these split functions. So just delete the
metadata.
Fixes https://github.com/llvm/llvm-project/issues/49689.
Reviewed By: rjmccall
Differential Revision: https://reviews.llvm.org/D116130
(cherry picked from commit e2e9e708e5c2c3d5357b4bb355285ef55cd060d9)
---
llvm/lib/Transforms/Coroutines/CoroSplit.cpp | 6 ++++++
llvm/test/Transforms/Coroutines/coro-split-00.ll | 12 +++++++-----
2 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/llvm/lib/Transforms/Coroutines/CoroSplit.cpp b/llvm/lib/Transforms/Coroutines/CoroSplit.cpp
index b5129809c6a6..78134fd297da 100644
--- a/llvm/lib/Transforms/Coroutines/CoroSplit.cpp
+++ b/llvm/lib/Transforms/Coroutines/CoroSplit.cpp
@@ -923,6 +923,12 @@ void CoroCloner::create() {
NewF->setVisibility(savedVisibility);
NewF->setUnnamedAddr(savedUnnamedAddr);
NewF->setDLLStorageClass(savedDLLStorageClass);
+ // The function sanitizer metadata needs to match the signature of the
+ // function it is being attached to. However this does not hold for split
+ // functions here. Thus remove the metadata for split functions.
+ if (Shape.ABI == coro::ABI::Switch &&
+ NewF->hasMetadata(LLVMContext::MD_func_sanitize))
+ NewF->eraseMetadata(LLVMContext::MD_func_sanitize);
// Replace the attributes of the new function:
auto OrigAttrs = NewF->getAttributes();
diff --git a/llvm/test/Transforms/Coroutines/coro-split-00.ll b/llvm/test/Transforms/Coroutines/coro-split-00.ll
index d5c6279a6a87..cf2dc10549e7 100644
--- a/llvm/test/Transforms/Coroutines/coro-split-00.ll
+++ b/llvm/test/Transforms/Coroutines/coro-split-00.ll
@@ -1,7 +1,7 @@
; Tests that coro-split pass splits the coroutine into f, f.resume and f.destroy
; RUN: opt < %s -passes='cgscc(coro-split),simplifycfg,early-cse' -S | FileCheck %s
-define i8* @f() "coroutine.presplit"="1" {
+define i8* @f() "coroutine.presplit"="1" !func_sanitize !0 {
entry:
%id = call token @llvm.coro.id(i32 0, i8* null, i8* null, i8* null)
%need.alloc = call i1 @llvm.coro.alloc(token %id)
@@ -32,7 +32,7 @@ suspend:
ret i8* %hdl
}
-; CHECK-LABEL: @f(
+; CHECK-LABEL: @f() !func_sanitize !0 {
; CHECK: call i8* @malloc
; CHECK: @llvm.coro.begin(token %id, i8* %phi)
; CHECK: store void (%f.Frame*)* @f.resume, void (%f.Frame*)** %resume.addr
@@ -43,7 +43,7 @@ suspend:
; CHECK-NOT: call void @free(
; CHECK: ret i8* %hdl
-; CHECK-LABEL: @f.resume(
+; CHECK-LABEL: @f.resume({{.*}}) {
; CHECK-NOT: call i8* @malloc
; CHECK-NOT: call void @print(i32 0)
; CHECK: call void @print(i32 1)
@@ -51,13 +51,13 @@ suspend:
; CHECK: call void @free(
; CHECK: ret void
-; CHECK-LABEL: @f.destroy(
+; CHECK-LABEL: @f.destroy({{.*}}) {
; CHECK-NOT: call i8* @malloc
; CHECK-NOT: call void @print(
; CHECK: call void @free(
; CHECK: ret void
-; CHECK-LABEL: @f.cleanup(
+; CHECK-LABEL: @f.cleanup({{.*}}) {
; CHECK-NOT: call i8* @malloc
; CHECK-NOT: call void @print(
; CHECK-NOT: call void @free(
@@ -77,3 +77,5 @@ declare i1 @llvm.coro.end(i8*, i1)
declare noalias i8* @malloc(i32)
declare void @print(i32)
declare void @free(i8*) willreturn
+
+!0 = !{i32 846595819, i8** null}

View File

@ -0,0 +1,13 @@
diff --git a/llvm/lib/CodeGen/AsmPrinter/CMakeLists.txt b/llvm/lib/CodeGen/AsmPrinter/CMakeLists.txt
index eb924282a75e..85929b54d6ce 100644
--- a/llvm/lib/CodeGen/AsmPrinter/CMakeLists.txt
+++ b/llvm/lib/CodeGen/AsmPrinter/CMakeLists.txt
@@ -44,3 +44,8 @@ add_llvm_component_library(LLVMAsmPrinter
Support
Target
)
+
+# https://bugs.llvm.org/show_bug.cgi?id=50611#c3
+if (CMAKE_COMPILER_IS_GNUCXX)
+ set_source_files_properties(DwarfCompileUnit.cpp PROPERTIES COMPILE_FLAGS -fno-strict-aliasing)
+endif()

Some files were not shown because too many files have changed in this diff Show More