Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Bug]: Cannot install services when /Users/Shared/Herd is owned by another user (Shared Users Folder permissions issue)

Aperta
#1,629 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
macos, mariadb, mysql

Direzione di ricerca

Inizia riproducendo il flusso di installazione per due utenti su /Users/Shared/Herd, quindi esamina il file herd-crashreport.txt collegato e i percorsi di installazione di MySQL e MariaDB. Il lavoro è completato quando l’installer riesce per il secondo utente oppure si interrompe con un errore di autorizzazioni visibile e risolvibile, senza arrestarsi in modo anomalo né rimanere in esecuzione indefinitamente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

macOS
Platform

macOS

Operating system version

macOS Sequoia 15.7.3 (24G419)

System architecture

ARM64 (M1, M2, etc)

Herd Version

1.25

PHP Version

8.4

Bug description
Summary

On macOS with multiple local admin users, Herd cannot install database services (MySQL/MariaDB) if a different user previously installed Herd or a service first. The installer appears to write into a shared directory without validating write permissions/ownership up front, leading to either a crash (MariaDB) or an indefinite “spinning” install state (MySQL) with no activity.

Affected Versions

Reproduced across multiple Herd versions: 1.15 → 1.25.

Environment
• macOS
• Multiple local user accounts (both Admin)

Description / Impact

When the shared Herd directory is owned by another user (e.g., created by a prior user profile), Herd fails to install services for the current user. This blocks core functionality (installing database services) and presents as either a fatal error/crash or a stalled installation with no progress, which is difficult for users to diagnose.

Workaround

Delete the shared Herd directory and retry installation:
• Remove: /Users/Shared/Herd
• Re-run Herd and attempt the service install again.

Root Cause (Likely)

Herd installs/extracts services into a shared folder (/Users/Shared/Herd) but does not validate that the current user has write permissions (or that ownership/ACLs are correct) before attempting to write/extract.

Recommendation / Fix Proposal
1. Preflight permission checks: Before downloading/extracting services, verify write access to the target directory. If not writable, fail fast with a clear error, such as:
• “Herd cannot write to /Users/Shared/Herd because it is owned by another user. Please delete it or fix permissions.”
2. Improve error handling:
• Prevent crashes (MariaDB path) and prevent infinite spinners (MySQL path).
• Surface a visible failure state with actionable guidance.
3. Consider changing install location: If feasible, install services into the current user’s profile (e.g., ~/Library/Application Support/Herd/...) to avoid cross-user ownership issues entirely. If a shared folder is required, ensure Herd sets the correct ownership/ACLs during setup and handles multi-user scenarios explicitly.

Steps to reproduce
1.	Create (or use) User A (Admin) and User B (Admin) on the same Mac.
2.	Log in as User A.
3.	Install Herd.
4.	Install a database service (e.g., MySQL or MariaDB) through Herd.
5.	Uninstall that service through Herd (optional, but reproduces either way consistently).
6.	Log out and switch to User B.
7.	Open Herd and attempt to install a database service.

Expected Result

Herd successfully installs the selected service, or it fails fast with a clear, actionable error message if permissions prevent installation.

Actual Result
• MariaDB: Herd encounters a fatal error and crashes during install.
• MySQL: Herd downloads and starts extraction, then becomes stuck “spinning” indefinitely with no CPU or disk activity.

Relevant log output
[herd-crashreport.txt](https://github.com/user-attachments/files/24847778/herd-crashreport.txt)
Lingua principale
Nessun dato sulla lingua
Stelle
123
Fork
1
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di beyondcode/herd-community

Tutte le issue di beyondcode/herd-community

Issue simili

Altre issue su Databases

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.