Skip to content

update: temporary fix for kirigami not found error#184

Open
kagurazakei wants to merge 252 commits into
Axenide:mainfrom
kagurazakei:main
Open

update: temporary fix for kirigami not found error#184
kagurazakei wants to merge 252 commits into
Axenide:mainfrom
kagurazakei:main

Conversation

@kagurazakei
Copy link
Copy Markdown

@kagurazakei kagurazakei commented May 22, 2026

Describe your changes

( 'kirirgami not found' error in nixos with qs version 3.0. i use pkgs override attrs fixing this problem.)

image

leriart and others added 13 commits April 20, 2026 18:57
- Fast exp(-k*x) approximation avoids transcendental function calls
- Skip palette entries with negligible weight (<0.001) based on squared distance
- Nearest-neighbor fallback ensures bright colors stay vivid
- Replace texture() with texelFetch() to bypass UV computation and filtering
- Use dot() for squared distance
- Apply mediump/lowp precision to accumulators and palette colors
- Add #pragma unroll to hint loop unrolling
- Simplify fastExpWeight polynomial to reduce operations
- Keep identical visual output while reducing ALU and bandwidth usage
leriart added 16 commits May 22, 2026 13:27
- Update ambxst logos (icon, logo) with proper colors (rojo + blanco)
- Clean up fastfetch insult script with expanded phrase list
- General project maintenance and asset updates
- Describe NothingLess as a minimal/performant fork of Ambxst
- Nothing Phone inspired design philosophy (dot-matrix, monochrome)
- Comparison table between Ambxst and NothingLess
- Updated credits acknowledging the fork origin
- Rebranded all scripts, configs, and assets from Ambxst to NothingLess
- Installer now installs 'nothingless' binary and uses Leriart/NothingLess repo
- All references: Axenide -> Leriart, ambxst -> nothingless
- Set Leriart's personal config as the default NothingLess preset
- Default font changed to Ndot-57-Aligned (dot-matrix Nothing aesthetic)
- CLI launcher creates 'nothingless' command (not ambxst)
- Preset directory renamed: 'Ambxst Default' -> 'NothingLess Default'
- Main logo/icons use the new red+white NothingLess branding
- Ndot font included in assets/fonts/ and installed automatically
- System commands: 'ambxst lock' -> 'nothingless lock'
- Maintained original copyright in LICENSE and TRADEMARK for upstream credit
- Renamed assets/ambxst -> assets/nothingless
- Renamed all logo/wallpaper SVGs with nothingless- prefix
- Updated all QML, JS, JSON, and config references
- New minimal README without emojis
- Uses nothingless-logo-color.svg as header
- Ndot dot-matrix aesthetic throughout
- Created 12 minimal wallpapers (1920x1080) inspired by Nothing aesthetic
- Red dot-matrix accents on black backgrounds
- Includes NL initial marks, dot patterns, and geometric minimalism
- Used Ndot font for the NL wallpaper
- Replaced old Ambxst wallpaper references
- All wallpapers stored in assets/nothingless-wallpapers/
- 11 wallpapers (1920x1080) using gray, white, and red only
- Minimal dot-matrix, glyph, and geometric patterns
- Removed old wallpaper-12 (NL letters)
- Cleaner, more cohesive Nothing aesthetic throughout
- Dark theme: black bg, red accent, gray/white text
- Light theme: white bg, red accent, gray/black text
- Nothing Phone inspired palette
- Terminal (dark/light) and JSON variants
- Removed stargazers/forks badges (repo not on GitHub yet)
- Replaced with static 'NothingLess' and 'Fork of Ambxst' badges
- Uses Nothing color scheme (black/red)
- PR Axenide#147: Compositor keybindings/theming applied at runtime
- PR Axenide#175: Window icons via StartupWMClass
- PR Axenide#174: Terminal apps via xdg-terminal-exec
- PR Axenide#149: Low battery notification with configurable thresholds
- NOTHINGLESS_ANALYSIS.md: Full audit of 28+ issues across rebrand,
  broken deps, bugs, docs, security, performance, and missing features
- UPSTREAM_IMPROVEMENTS.md: Analysis of Ambxst PRs/issues to merge
SettingsTab sidebar used Styling.srItem("overprimary") which
resolves to 'primary' (#E80012) as text color, but the highlight
background also uses 'focus' style with primary (#E80012).
Result: red text on red background - invisible.

Changed to Styling.srItem("primary") which resolves to
'overPrimary' (#FFFFFF) - white text on red background.
- ShellPanel: Remove 'Donate' button (pointed to axeni.de)
- ShellPanel: 'About Ambxst' -> 'About NothingLess'
- ShellPanel: URL -> github.com/Leriart/NothingLess
- UpdateService: repoUrl -> Leriart/NothingLess
- UpdateService: changelogUrl -> GitHub releases
- UpdateService: notification texts from Ambxst -> NothingLess
- DiscordGenerator: URL/text -> NothingLess
- overBackground: #888888 -> #E8E8E8 (readable on #0A0A0A)
- overSurface: #888888 -> #E8E8E8
- overSurfaceVariant: #999999 -> #CCCCCC
- overSecondary: #0A0A0A -> #E8E8E8
- overTertiary: #0A0A0A -> #E8E8E8

Ensures all text is white/light gray on dark backgrounds,
not the previous low-contrast gray-on-black.
sed command to remove Donate button left an unclosed
ActionButton { block, causing QML parse error at line 1980.
ShellPanel wouldn't load at all - no options visible.

Removed the orphan line. ShellPanel now loads correctly.
- Add 'showMetrics' to notch defaults
- Add toggle-metrics IPC handler in GlobalShortcuts
- Add keybind action in KeybindActions.js
- Add default bind SUPER+SHIFT+BACKSPACE
- Fix 'Reload Ambxst'/'Quit Ambxst' labels
- Fix preset notch.json customText
leriart and others added 28 commits May 23, 2026 23:22
- _ctxAnchor stores the dock icon that was right-clicked
- ctxPopup.anchorItem = _ctxAnchor (appears near the icon, not toggle btn)
- Uses toggle() instead of open() to match SysTrayItem pattern
- Removed hasMenu check (always shows popup on right-click)
- Added 'No actions' text when QsMenuOpener has no children
- Added contentWidth: 240, contentHeight with Math.max(50, ...)
  so popup is visible even when empty
- ctxCol id for implicitHeight reference
- Popup code EXACTLY as in c4a3134 (user confirmed working)
- Styling only: 32px spacing, spacing 4, no badge,
  rotation on expand, no right-click on toggle, perma-rounded
- ctxPopup: contentWidth = max(220, ctxCol + 16), contentHeight up to 400
- toggle right corners: flat (0) when expanded for seamless dock join
- dock icons: 26x26 (was 24), systray icons inside: 18x18 (was 16)
- ctxCol id for implicit size reference
- Single StyledRect covers toggle + dock area (no seam)
- Root Item Layout.preferredWidth grows when expanded
  (36 + dockWidth) with animate
- RowLayout with icons at anchors.leftMargin: 40 (after icon)
- Toggle icon at fixed x:9 y:9
- Removed separate toggleBtn/dockBg StyledRects
- Icon items: 36x36 (same as ControlsButton/BatteryIndicator)
- Spacing between icons: 4 (matching bar RowLayout spacing)
- _dw: 40px per icon (36 + 4)
_dw and dock visibility now read dockRep.count directly (bypassing
stale _dockN property). This ensures layout expansion works with
actual Repeater item count.
- clip: true on root Item — icons clipped during width animation
- dockRow opacity animates 0→1 when expanded (fade in/out)
- Combined effect: background expands smoothly, icons fade + slide in
  No visible overlap with other bar buttons
Removed the 'Hidden Systray Icons' toggle list and description.
The systray overflow is now managed by the TaskTray toggle button
in the bar.
- Layout.preferredHeight grows when vertical + expanded (instead of width)
- Behavior on Layout.preferredHeight for vertical expand animation
- RowLayout anchors adapt: leftMargin for horizontal, topMargin for vertical
- Dock icons (vertical) ColumnLayout for vertical orientation
- Both layouts share dockRep model via model binding
RowLayout (horizontal dock) now has visible: !root.vertical to
prevent duplicate icons showing alongside vertical ColumnLayout.
topRightRadius and bottomRightRadius are now always root.endRadius
(not flattening to 0 when expanded). Since the toggle and dock share
a single StyledRect, there's no seam to hide.
Monitor commands like 'monitor DP-3,preferred,0x0,auto' were being
sent to axctl system execute which doesn't handle them. Now properly
prepends 'hyprctl dispatch' so the command reaches Hyprland.
axctl returns monitor position in metadata.x/metadata.y, not at root
level. normalize_monitors now reads from metadata as fallback.

Before: all monitors showed x=0,y=0 → overlapping positions
After: reads metadata.x from axctl, preserving actual layout
…spatch

- monitors_writer.py now uses hyprctl reload (reads monitors.conf)
  instead of individual hyprctl dispatch calls. Same as nwg-displays.
- Fallback to individual dispatches if reload fails
- MonitorArrangementView no longer calls AxctlService.dispatch for
  monitor positions (relies on MonitorsWriter.syncWithData → reload)
- Settings changes (scale, transform, etc.) still go through
  AxctlService (now properly prefixed with hyprctl dispatch)
Monitors are now written to ~/.local/share/nothingless/hyprland.conf
(between markers) which is sourced by hyprland.conf via:
  source = ~/.local/share/nothingless/hyprland.conf

Also injects into hyprland.lua for lua-mode users.
The separate monitors.conf/lua are still written for direct access.
…or state

AxctlService.monitors mapping was missing x, y, and transform from
the axctl monitor metadata. MonitorArrangementView and MonitorCard
could not read monitor positions, causing all monitors to appear
at position 0,0.

Now correctly reads: mon.metadata.x, mon.metadata.y, mon.metadata.transform
After Python script finishes writing monitors.conf and injecting into
hyprland.conf, MonitorsWriter now runs hyprctl reload directly from QML
via a dedicated Process. Ensures the config is applied even if the
Python subprocess can't access HYPRLAND_INSTANCE_SIGNATURE.
…ectory)

MonitorsWriter.qml is at modules/services/, script is at scripts/.
Path was: thisFile.parent + ../scripts/ = modules/scripts/ (WRONG)
Fixed:   thisFile.parent + ../../scripts/ = scripts/ (CORRECT)

This prevented the Python script from being found, causing the
Save/Apply buttons to silently fail.
MonitorsWriter persistence was added but the live dispatch was removed.
Now both work: dispatch updates position live via hyprctl dispatch,
and MonitorsWriter persists to config files on the debounce timer.
…reen

MonitorsWriter.buildMonitorList was reading x/y from Quickshell.screens
directly, ignoring axctl metadata positions. Now prefers axctl.x/y
with fallback to screen positions (same as MonitorArrangementView).
…typing

- Use mo.children directly (not .values) in Repeater model
- Type modelData as QsMenuHandle instead of var
- Call triggered() directly on the typed handle
- Style context menu items with theme colors, checkboxes and submenu chevrons
- Fix overlapping layout by using absolute positioning
…othing

- Copy Ambxst Default preset from original Ambxst (author: Axenide)
- Rename NothingLess Default preset to just 'Nothing' (author: Leriart)
- Update Config.qml default presetDir reference
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants