[Enhancement] Improve build/install compatibility for non-root/restricted environments (e.g., Termux)
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 48/100
- Issue-Typ
- Feature
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- linux, shell
- Bereich
- build-system
Rechercherichtung
Start by reading the Makefile and configure options, then compare their install paths and ownership settings with the Termux workaround in the issue. Check how prefix and DESTDIR are handled and where MANGRPARG, SA_LIB_DIR, SA_DIR, SYSCONFIG_DIR, and IGNORE_FILE_ATTRIBUTES are used. Done means installs in restricted user-space environments no longer require system directories or root ownership operations, while existing installs remain supported.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Problem
Installing sysstat in restricted user-space environments (like Termux on Android) fails because the Makefile assumes access to system-level directories (/var/log, /etc/sysconfig) and requires root privileges for chown/install group operations, which are unavailable.
Even when ./configure --prefix=$PREFIX is used, the following paths remain hardcoded or assume system-level permissions:
/var/log/sa/etc/sysconfigchownoperations and-g rootarguments for installation.
Workaround
To successfully install in Termux, I had to manually override these variables and settings during make install:
./configure --prefix=$PREFIX
make install MANGRPARG="" \
SA_LIB_DIR=$PREFIX/lib/sa \
SA_DIR=$PREFIX/var/log/sa \
SYSCONFIG_DIR=$PREFIX/etc/sysconfig \
IGNORE_FILE_ATTRIBUTES=y
Suggested Improvements
It would greatly improve portability if:
- All installation directory variables respect the
prefixorDESTDIR. chownand group ownership operations were made optional (e.g., via a./configureflag) to allow installation by non-root users.
- Vorherrschende Sprache
- C
- Sterne
- 3.4k
- Forks
- 490
- Ø Merge
- 3 T. 14 Std.
- Gemergte PRs (30 T.)
- 5
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus sysstat/sysstat
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 40/100
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
-
sar: duplicate interrupts when using SUM while reading interrupts in 390x arch (from `/proc/interrupts`)Evtl. wieder frei Ein Pull Request dazu wurde ohne Merge geschlossen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 30/100
Alle Issues in sysstat/sysstat
Ähnliche Issues
-
chore(gateway): emit INFO budget reserved/settled logs for proactivity v2 (chip task_2855f4ec)Offenbackend
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
BasedHardware/omi#20940 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
kovidgoyal/kitty#10625 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Feature Status: Needs Triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 73/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 67/100
Maintainer antworten meist innerhalb von 1 Tag
-
docs
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag