Commit Graph

280 Commits

Author SHA1 Message Date
Daniel unbrot Pätzold 84527d6384 client_software cosmetic changes 2026-05-08 12:07:54 +02:00
Daniel unbrot Pätzold 10517de84e Obsolete client_software/install.sh 2026-05-08 10:48:48 +02:00
Daniel unbrot Pätzold 1495c57a99 Obsoleted client_software/install.sh and user_run.sh
To make structure of client_software more clear for
following introduction of client_software.2nd
2026-05-08 10:42:34 +02:00
Daniel unbrot Pätzold 0b13f19f84 logon_script: Only Snc Mozilla if the Options are set in config. 2026-05-08 09:43:40 +02:00
Daniel unbrot Pätzold b9d13e821d mount_ecrypt_home: run gocryptfs in foreground to fix premature ExecStop
Without -fg, gocryptfs forks to background and the parent exits,
causing systemd to consider the service done and immediately call
ExecStop (fusermount -u). With -fg, gocryptfs stays as the tracked
service process so ExecStop only fires on explicit service stop at
logout.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 18:05:19 +02:00
Daniel unbrot Pätzold 815fa46daa mount_ecrypt_home: wait for FUSE mount before removing passfile
systemd-run service mode returns as soon as the start request is
accepted, before gocryptfs has read the passfile. Poll /proc/mounts
for up to 10 seconds so the passfile is only removed after the mount
is confirmed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 18:05:19 +02:00
Daniel unbrot Pätzold 588f669a60 logon_script: gate KDE-specific settings on XDG_CURRENT_DESKTOP
Wrap kwriteconfig5 calls in a KDE check so they are skipped on
Cinnamon and other desktops. Also add empty-session setting so
previous apps are not restored on login.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 18:05:19 +02:00
Daniel unbrot Pätzold 4da2a3fa69 mount_ecrypt_home: unmount gocryptfs cleanly on session logout
Switch from --scope to a transient service so systemd can run
fusermount -u via ExecStop before terminating the process.
With KillMode=none, gocryptfs exits on its own once the FUSE
filesystem is detached.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 18:05:19 +02:00
Daniel unbrot Pätzold fdc2a44582 install: given repo url will be used intead of already existing ones 2026-05-07 18:05:19 +02:00
Daniel unbrot Pätzold 49a998fc12 Mozilla_pre: Make Firefox profile customizable 2026-05-07 18:05:19 +02:00
Daniel unbrot Pätzold 063011d404 0030_desktop_symbols does not need root for installing 2026-05-07 18:05:19 +02:00
obel1x 113bcc9a5d Merge pull request 'Fix offline auth and DNS failure handling' (#28) from unbrot/fedora-OEMDRV:main into main
Reviewed-on: #28
2026-05-07 12:46:16 +02:00
Daniel unbrot Pätzold 253030228f logon_script: check DNS resolution before proceeding
If the IPA server FQDN cannot be resolved at startup (e.g. due to a
DNSSEC outage or network not yet ready), the logon script would silently
fail later. The new check prompts the user to retry, continue anyway, or
quit, so the problem is immediately visible.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 12:26:07 +02:00
Daniel unbrot Pätzold f59ba70bb9 sync_client_software: patch sssd.conf to add krb5_validate = False
SSSD >= 2.10.1 no longer raises CAP_DAC_READ_SEARCH to effective in
offline mode, so validate_tgt fails with EACCES reading /etc/krb5.keytab
before the cached-credential fallback is reached. Adding krb5_validate =
False disables the keytab validation step and restores reliable offline
authentication for FreeIPA domain users.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 12:26:07 +02:00
Daniel unbrot Pätzold 3906d19a4f kickstart: cinnamon - Okular is kde only, use evince on cinnamon 2026-05-07 12:26:07 +02:00
Daniel unbrot Pätzold 9b4d68ca72 kickstarter: Include ocular in packages 2026-05-07 12:26:07 +02:00
obel1x 5238f778ad Merge pull request 'kde: exclude plasma-setup and plasma-welcome to suppress first-boot wizard' (#27) from unbrot/fedora-OEMDRV:main into main
Reviewed-on: #27
2026-05-06 17:05:06 +02:00
Daniel unbrot Pätzold 4c17ac0b1f kde: exclude plasma-setup and plasma-welcome to suppress first-boot wizard
F44 dropped @kde-spin-initial-setup; plasma-setup (mandatory in @kde-desktop)
is now the first-boot wizard and is not covered by firstboot --disable.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-06 16:56:58 +02:00
obel1x c061b6434f Merge pull request 'Improved configure.sh and fixing KDE on Fedora 44 kickstarter' (#26) from unbrot/fedora-OEMDRV:main into main
Reviewed-on: #26
2026-05-06 09:20:47 +02:00
Daniel unbrot Pätzold b978771206 confige: source dists defaults to for robustnes
and docs
2026-05-06 09:06:30 +02:00
Daniel unbrot Pätzold ab7dc208ad configure: Better detection and choice between predefined configs 2026-05-06 08:42:53 +02:00
Daniel unbrot Pätzold 559e913c0f install: if config was found with other repourl as the user specified, use users repourl for configure call 2026-05-06 08:07:31 +02:00
Daniel unbrot Pätzold bc4c50218f kde: exclude kde spin initial setup, so that akanadi can be skipped 2026-05-05 21:53:12 +02:00
Daniel unbrot Pätzold 9fed049222 configure: comment if existing config was found 2026-05-05 21:33:25 +02:00
Daniel unbrot Pätzold 0dadf36230 Baseprofilenames and configure checks for existing preconfigure 2026-05-05 21:07:48 +02:00
Daniel unbrot Pätzold cf784b56a6 kde_fullsetup: expand akonadi exclusions to full chain
@kde-pim is optional and not selected, so all KDE PIM packages are
safe to exclude. Replaces the previous partial -akonadi-server/mysql
with the complete exclusion list matching cinnamon_fullsetup.cfg.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-05 14:18:03 +02:00
Daniel unbrot Pätzold c3c0a6ac85 cinnamon_fullsetup: exclude akonadi and all dependent KDE PIM packages
Anaconda's depsolve pulls in akonadi-server via kmymoney-libs (kmymoney
is an optional package in @office). Exclude the entire akonadi chain
so neither akonadi-server nor any package requiring it gets installed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-05 14:14:09 +02:00
Daniel unbrot Pätzold 6876c06ead nextcloud/user_run: centralise Flatpak app ID and data dir path
Introduce NC_FLATPAK_APP and NC_FLATPAK_DIR variables so the app ID
and ~/.var/app path are defined once and referenced everywhere, rather
than repeated as literals. Also fixes a stray leading '/' in the
nextcloud.cfg grep path.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-05 08:50:21 +02:00
Daniel unbrot Pätzold b5462e4781 NC: remove autostart from installed Version 2026-05-05 08:35:00 +02:00
obel1x cc10fb5b48 Merge pull request 'sync_client_software: depth=1 fetch, clean from repo root; gitignore cleanup' (#25) from unbrot/fedora-OEMDRV:main into main
Reviewed-on: #25
2026-05-04 19:49:39 +02:00
Daniel unbrot Pätzold 83c25cd45d include *.bak in config dirs to gitignore 2026-05-04 19:40:42 +02:00
Daniel unbrot Pätzold d62d0038e6 gitignore: removed double line 2026-05-04 19:35:38 +02:00
Daniel unbrot Pätzold a3c95ab146 sync_client_software: run git clean from repo root
git clean -fd scopes to the current directory and below, so running it
from the system_setup/ subdirectory missed untracked files in sibling
dirs like config/. Use -C "${SYSCONFIGPATH}" to always clean from the
repo root regardless of invocation directory.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-04 19:29:08 +02:00
Daniel unbrot Pätzold 1ac952c094 sync_client_software: fetch depth=1 and clean untracked files on upgrade
Replace the broken `git rebase HEAD^` with a proper shallow fetch:
- `git fetch --depth=1` limits local history to one commit, regardless of server history
- `git reset --hard FETCH_HEAD` syncs the working tree to the fetched tip
- `git clean -fd` removes untracked non-ignored files left by old versions
- `git gc --prune=now` immediately purges unreachable history objects

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-04 19:29:08 +02:00
obel1x 53b87fbe76 Merge pull request 'Fedora 44, install/configure improvements, Nextcloud desktop client fixes' (#24) from unbrot/fedora-OEMDRV:main into main
Reviewed-on: #24
2026-05-04 17:00:03 +02:00
Daniel unbrot Pätzold 3b392c7862 nextcloud/user_run: block new setups when any folder is already configured
Set _nc_first=0 in the already-found branch so that a configured folder
prevents subsequent entries from wiping the Nextcloud config.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-04 15:21:48 +02:00
Daniel unbrot Pätzold f04bbdf9f1 nextcloud/user_run: reactivate _nc_first single-folder guard
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-04 14:12:41 +02:00
Daniel unbrot Pätzold fb726795db nextcloud/user_run: prompt to clean up leftover .bak folders before sync
Before the sync loop, find all *.bak directories in the parent dirs of
configured sync paths, list them with their size, and ask the user to
delete them with a y/N prompt.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-04 14:11:39 +02:00
Daniel unbrot Pätzold 2bdee44e65 nextcloud/user_run: use timestamp suffix for renamed backup folders
Replace static _bak suffix with _YYYYMMDDhhmmss.bak so repeated runs
never fail trying to overwrite an existing backup directory.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-04 14:07:11 +02:00
Daniel unbrot Pätzold e8c869f109 nextcloud/user_run: wipe config only once for first new sync folder
Config wipe now guarded by _nc_wipe_done flag so subsequent new entries
do not destroy the previous setup. _nc_first logic kept as comments for
later activation when multi-folder support is confirmed working.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-04 13:48:08 +02:00
Daniel unbrot Pätzold 2a1530f4f9 nextcloud/user_run: convert to POSIX sh, clean up loop and alignment
- Shebang changed to sh; replace all [[ ]] with [ ], == with = in [ ]
- Loop over CLIENT_DATA_SYNC[@] directly instead of counting to 100;
  replace index-based first-entry check with a _nc_first flag
- Fix missing fi before done, remove stray fi after KWallet block
- Dedent KWallet block to top level (was left indented from inside the loop)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-04 13:23:08 +02:00
Daniel unbrot Pätzold 4143925ff7 configure: some usable output 2026-05-04 12:40:00 +02:00
Daniel unbrot Pätzold 5eacd55153 nextcloud/install: session-bus override, KWallet existence check, pass REPO vars
- sync_client_software.sh: add system-wide flatpak session-bus override for
  Nextcloud so KWallet D-Bus access works for all users; fix broken compound
  test ([ a || b ] → [ a ] || [ b ])
- user_run.sh: check KWallet entries with hasEntry before writing — skip write
  and print info message when both passwords are already present; remove stale
  commented-out code
- install.sh: forward REPO_URL and REPO_BRANCH into configure.sh environment
  for both the su- and direct-bash invocation paths
- configure.sh: simplify do_configure (user cleanup)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-04 12:24:24 +02:00
Daniel unbrot Pätzold 9a2d8ca6be Base Profile: Fedora 43 2026-05-03 21:50:22 +02:00
Daniel unbrot Pätzold f8143ee06e ks: add Fedora 44 source include, update both profiles to use it
Add source_fedora_44.inc with verified mirror URLs for Fedora 44 base,
updates, cisco-openh264, and RPM Fusion free/nonfree. Both kde_fullsetup.cfg
and cinnamon_fullsetup.cfg now %include this file instead of inlining the
repo lines. Fix stale comment in source_fedora_44.inc (said Fedora 43).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 21:49:09 +02:00
Daniel unbrot Pätzold 48803d89a4 Configure: Take given REPO_URL and BRANCH to new installation 2026-05-03 21:48:52 +02:00
Daniel unbrot Pätzold b214880351 nextcloud: fix GTK module warning, Qt session error, skip KWallet on non-KDE
cinnamon_fullsetup.cfg: add xapps package so the xapp-gtk3-module GTK
module referenced in Cinnamon's GTK settings is present for Flatpak apps.

user_run.sh: pass --setenv=SESSION_MANAGER= to systemd-run so Qt does not
try to connect to an X11 session manager socket that may not exist (fixes
"Could not open network socket" on Wayland and non-KDE desktops).
Guard the KWallet D-Bus block behind a session-bus presence check
(qdbus | grep org.kde.kwalletd) so it is skipped entirely on Cinnamon and
other non-KDE desktops instead of producing D-Bus errors.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 20:56:34 +02:00
Daniel unbrot Pätzold 73de38efe6 small changes in output 2026-05-03 20:39:56 +02:00
Daniel unbrot Pätzold 7d109111c1 Logon: Don't need KDE 2026-05-03 20:18:54 +02:00
Daniel unbrot Pätzold 8e0faed130 Install: Fix permissions 2026-05-03 19:11:19 +02:00