Skip to content

Instantly share code, notes, and snippets.

View joseivanlopez's full-sized avatar

José Iván López joseivanlopez

  • Suse Linux Gmbh
  • Las Palmas de Gran Canaria
View GitHub Profile

Analysis: Current vs. Proposed Versioning Approach

Current Approach: Multi-Part Versioning (5.0.X.Y)

How it works:

  • YaST packages use semantic-like versioning: MAJOR.MINOR.PATCH.MAINTENANCE
  • Example: 5.0.3.1 → version 5.0.3 with maintenance update 1
  • The fourth number was recently added for maintenance releases

Critical limitation: The major and minor versions are completely frozen and meaningless.

Dependency Sanitization Analysis Report

Generated: 2026-09-03 Tool: Knip v0.65.x Project: Agama Web


Executive Summary

Duplicate dependency versions

Analysis of crates compiled in multiple versions across the workspace. Run with: cargo tree --duplicates

TL;DR — All 13 conflicts are purely transitive. The workspace itself uses modern versions throughout. No workspace Cargo.toml changes can fix these; they require upstream crate updates.


What you are experiencing is the classic behavior of a standard, non-clustered filesystem (like ext4, Btrfs, or XFS) on shared raw block storage. Standard filesystems assume they have exclusive control over the drive—they cache disk structures in RAM, so when Machine B modifies or deletes partitions on the disk, Machine A's kernel has no idea the disk structure changed and corrupts its memory cache or throws read errors.

To stop two machines from accessing the same LUN at the same time, you have two primary ways to fix this: Target-Side Access Control (The Correct Fix) or Initiator/Cluster-Side Locking.


Option 1: Restrict Access on the iSCSI Target (Recommended)

The safest and most reliable place to prevent concurrent access is at the iSCSI Target (the storage server or SAN exporting the LUN).

Analysis: is there an authoritative list of "data transports" for Linux?

Date: 2026-08-03. All statements below were checked against the current upstream sources (libstorage-ng master, lsscsi master, util-linux master, torvalds/linux master, systemd main, sg3_utils master), against the local system (openSUSE, lsscsi 0.32) and against the local checkouts of yast2-storage-ng and libstorage-ng.

TL;DR

  1. There is no authoritative list of "data transports" for Linux. Neither the kernel nor any

See gist https://gist.github.com/ancorgs/07d8c772226cfd1794631f284b5ad903, section "Searching with drives by their partitions".

I am trying to evaluate the JSON schema proposed in the gist to search for partitions. There are several details I am not convinced about.

Details to improve

Usage of max: 0

max: 0 is used to indicate that none of the partitions matches the given condition:

More options to search

I propose to do all the following (not everthing at once)

Adding more first-level criteria

We can add driver or transport to drive (which currently supports size and name).

We can add id to partition (which currently supports size, name and number).

Almost all modern operating system installers (Windows, macOS, and various Linux distributions) offer a way to cancel the installation process, but the availability and safety of doing so depend heavily on what stage of the installation you are in.

Operating system installers divide the process into a safe "Configuration Phase" and a critical "Writing Phase."


Phase 1: The Configuration Phase (100% Safe to Cancel)

Before any files are copied or disks are formatted, you go through setup screens (choosing a language, agreeing to a license agreement, selecting a keyboard layout, or choosing a Wi-Fi network).

We have detected some missing translations. There are two difference cases:

  • Strings marked for translations with N_ but then they are not translated with _. Example: src/components/storage/utils.ts#90 and src/components/storage/SpacePolicyMenu.tsx#45
  • Literal strings passed as component props without translations. Example: src/components/storage/SpaceActionsTable.tsx#153

FINDINGS

Case 1: Strings marked with N_() but not translated with _()