Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] New package: icecc-1.4.0
@ 2024-05-15 22:39 voidframe
  2024-05-15 22:53 ` classabbyamp
  0 siblings, 1 reply; 2+ messages in thread
From: voidframe @ 2024-05-15 22:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1092 bytes --]

There is a new pull request by voidframe against master on the void-packages repository

https://github.com/voidframe/ext-void-packages icecc
https://github.com/void-linux/void-packages/pull/50367

New package: icecc-1.4.0
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**


#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**


<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->

#### Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)



A patch file from https://github.com/void-linux/void-packages/pull/50367.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-icecc-50367.patch --]
[-- Type: text/x-diff, Size: 5447 bytes --]

From ebb01f58586f12ee4cb54d98ed9adf5de542bd58 Mon Sep 17 00:00:00 2001
From: Blazej PODSIADLO <blazej@voidframe.com>
Date: Thu, 16 May 2024 00:36:02 +0200
Subject: [PATCH] New package: icecc-1.4.0

---
 srcpkgs/icecc/files/icecc-scheduler/run | 27 +++++++++++
 srcpkgs/icecc/files/icecc.conf          | 63 +++++++++++++++++++++++++
 srcpkgs/icecc/files/iceccd/run          | 58 +++++++++++++++++++++++
 srcpkgs/icecc/template                  | 19 ++++++++
 4 files changed, 167 insertions(+)
 create mode 100644 srcpkgs/icecc/files/icecc-scheduler/run
 create mode 100644 srcpkgs/icecc/files/icecc.conf
 create mode 100755 srcpkgs/icecc/files/iceccd/run
 create mode 100644 srcpkgs/icecc/template

diff --git a/srcpkgs/icecc/files/icecc-scheduler/run b/srcpkgs/icecc/files/icecc-scheduler/run
new file mode 100644
index 00000000000000..a39fea47d301c7
--- /dev/null
+++ b/srcpkgs/icecc/files/icecc-scheduler/run
@@ -0,0 +1,27 @@
+#!/bin/sh
+exec 2>&1
+
+
+SCHEDULER=/usr/sbin/icecc-scheduler
+CONFIGFILE=/etc/icecc/icecc.conf
+
+# Read configuration files
+[ -r $CONFIGFILE ] && . $CONFIGFILE
+
+test -x $SCHEDULER || exit 0
+
+
+netname=
+if test -n "$ICECC_NETNAME"; then
+	netname="-n $ICECC_NETNAME"
+fi
+
+if test -z "$ICECC_SCHEDULER_LOG_FILE"; then
+	ICECC_SCHEDULER_LOG_FILE="/var/log/icecc_scheduler"
+fi
+
+logfile="-l $ICECC_SCHEDULER_LOG_FILE"
+: > $ICECC_SCHEDULER_LOG_FILE
+chown _icecc $ICECC_SCHEDULER_LOG_FILE
+exec $SCHEDULER -u _icecc -d $logfile $netname 2>&1
+
diff --git a/srcpkgs/icecc/files/icecc.conf b/srcpkgs/icecc/files/icecc.conf
new file mode 100644
index 00000000000000..3c88ca1a5e319f
--- /dev/null
+++ b/srcpkgs/icecc/files/icecc.conf
@@ -0,0 +1,63 @@
+#
+# Nice level of running compilers
+#
+# ICECC_NICE_LEVEL="5"
+ICECC_NICE_LEVEL="5"
+
+#
+# icecc daemon log file
+#
+# ICECC_LOG_FILE="/var/log/iceccd.log"
+ICECC_LOG_FILE="/var/log/iceccd.log"
+
+#
+# Identification for the network the scheduler and daemon run on.
+# You can have several distinct icecc networks in the same LAN
+# for whatever reason.
+#
+# ICECC_NETNAME=""
+ICECC_NETNAME=""
+
+#
+# You can overwrite here the number of jobs to run in parallel. Per
+# default this depends on the number of (virtual) CPUs installed.
+#
+# Note: a value of "0" is actually interpreted as "1", however it
+# also sets ICECC_ALLOW_REMOTE="no".
+#
+# ICECC_MAX_JOBS=""
+ICECC_MAX_JOBS=""
+
+#
+# Specifies whether jobs submitted by other nodes are allowed to run on
+# this one.
+#
+# ICECC_ALLOW_REMOTE="yes"
+ICECC_ALLOW_REMOTE="yes"
+
+#
+# This is the directory where the icecc daemon stores the environments
+# it compiles in. In a big network this can grow quite a bit, so use some
+# path if your /tmp is small - but the user icecc has to write to it.
+#
+# ICECC_BASEDIR="/var/cache/icecc"
+ICECC_BASEDIR="/var/cache/icecc"
+
+#
+# icecc scheduler log file
+#
+# ICECC_SCHEDULER_LOG_FILE="/var/log/icecc_scheduler.log"
+ICECC_SCHEDULER_LOG_FILE="/var/log/icecc_scheduler.log"
+
+#
+# If the daemon can't find the scheduler by broadcast (e.g. because
+# of a firewall) you can specify it.
+#
+# ICECC_SCHEDULER_HOST=""
+ICECC_SCHEDULER_HOST=""
+
+#
+# Option to set cache limit of icecc daemon in MB.
+#
+# ICECC_CACHE_LIMIT=""
+ICECC_CACHE_LIMIT=""
diff --git a/srcpkgs/icecc/files/iceccd/run b/srcpkgs/icecc/files/iceccd/run
new file mode 100755
index 00000000000000..dfe6ed8daeacba
--- /dev/null
+++ b/srcpkgs/icecc/files/iceccd/run
@@ -0,0 +1,58 @@
+#!/bin/sh
+exec 2>&1
+
+DAEMON=/usr/sbin/iceccd
+CONFIGFILE=/etc/icecc/icecc.conf
+
+# Read configuration files
+[ -r $CONFIGFILE ] && . $CONFIGFILE
+
+test -x $DAEMON || exit 0
+
+netname=
+if test -n "$ICECC_NETNAME"; then
+	netname="-n $ICECC_NETNAME"
+fi
+
+logfile=""
+if test -n "$ICECC_LOG_FILE"; then
+	logfile="-l $ICECC_LOG_FILE"
+fi
+
+nice=
+if test -n "$ICECC_NICE_LEVEL"; then
+	nice="--nice $ICECC_NICE_LEVEL"
+fi
+
+scheduler=
+if test -n "$ICECC_SCHEDULER_HOST"; then
+	scheduler="-s $ICECC_SCHEDULER_HOST"
+fi
+
+basedir=
+if test -n "$ICECC_BASEDIR"; then
+	basedir="-b $ICECC_BASEDIR"
+fi
+
+noremote=
+if test "$ICECC_ALLOW_REMOTE" = "no"; then
+	noremote="--no-remote"
+fi
+
+maxjobs=
+if test -n "$ICECC_MAX_JOBS"; then
+	if test "$ICECC_MAX_JOBS" -eq 0; then
+		maxjobs="-m 1"
+		noremote="--no-remote"
+	else
+		maxjobs="-m $ICECC_MAX_JOBS"
+	fi
+fi
+
+cachelimit=
+if test -n "$ICECC_CACHE_LIMIT"; then
+	cachelimit="--cache-limit $ICECC_CACHE_LIMIT"
+fi
+
+exec $DAEMON -d $logfile $nice $scheduler $netname -u _icecc $basedir $maxjobs $noremote $cachelimit 2>&1
+
diff --git a/srcpkgs/icecc/template b/srcpkgs/icecc/template
new file mode 100644
index 00000000000000..d54f90d993e6c7
--- /dev/null
+++ b/srcpkgs/icecc/template
@@ -0,0 +1,19 @@
+# Template file for 'icecc'
+pkgname=icecc
+version=1.4.0
+revision=1
+build_style=gnu-configure
+hostmakedepends="pkg-config libcap-ng-devel lzo-devel libzstd-devel libarchive-devel"
+short_desc="Distributed compiler with a central scheduler to share build load"
+maintainer="voidframe.com <blazej@voidframe.com>"
+license="GPL-2.0-only"
+homepage="https://github.com/icecc/icecream"
+distfiles="https://github.com/icecc/icecream/releases/download/1.4/icecc-${version}.tar.xz"
+checksum=7d750e8b866215f8b8e93404a75a8d5a9b1c1a675565af847e4d24964ec7d66b
+system_accounts=_icecc
+make_dirs="/var/cache/icecc 0700 _icecc _icecc"
+post_install() {
+	vinstall ${FILESDIR}/icecc.conf 644 /etc/
+	vsv iceccd
+	vsv icecc-scheduler
+}

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: New package: icecc-1.4.0
  2024-05-15 22:39 [PR PATCH] New package: icecc-1.4.0 voidframe
@ 2024-05-15 22:53 ` classabbyamp
  0 siblings, 0 replies; 2+ messages in thread
From: classabbyamp @ 2024-05-15 22:53 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 227 bytes --]

New comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/pull/50367#issuecomment-2113612667

Comment:
In the future, don't create a new PR, use squash, rebase, and force push instead

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-05-15 22:53 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-05-15 22:39 [PR PATCH] New package: icecc-1.4.0 voidframe
2024-05-15 22:53 ` classabbyamp

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).