Changelog
All notable changes to Gitee (Parch Linux fork of SearXNG) are documented here.
[0.2.4]
Warning
This is the final release of the v0.2.x release family.
Added
-
Parch Linux brand theme: Complete visual redesign of the smart theme using Parch GNU/Linux design language:
- Brand colors: Cyan (
#007a99/#00eaff), Blue (#0060c0/#0080ff), Green (#008a4c/#00ff80) - Brand gradient:
linear-gradient(135deg, cyan, blue, green)applied to buttons, skip links, and selected states - Dark theme: Neon accents on near-black
#0a0f16surfaces with glass layers - Light theme: Deep low-chroma tones on white backgrounds
- Typography: Estedad + Work Sans, with JetBrains Mono for code
- Parch signature easing:
cubic-bezier(0.16, 1, 0.3, 1)across transitions - Custom CSS properties:
--brand-gradient,--accent-green,--accent-purple,--accent-violet
- Brand colors: Cyan (
-
Minimal hero index page: Redesigned landing page with:
- Vertically centered hero section and generous whitespace
- Responsive logo display up to 160px
- Minimal text-only category pills with subtle borders
- Cyan accent for selected categories
- Full-width search box constrained by its parent container
- Subtle footer links for donate, about, and settings
-
Accessibility improvements
- Skip-to-content link on all pages
prefers-reduced-motionsupport:focus-visiblefocus states
-
Docker and CI infrastructure
- Root
Dockerfilewith a combined builder/dist multi-stage build build.ymlGitHub Actions workflow for Docker image buildscontainer.ymlworkflow for container-based CI with owner gating
- Root
Changed
- Upstream synchronization: Synced with the latest SearXNG upstream.
- AI Assistant framework: Removed the hardcoded Jabir AI backend. AI chat now supports user-configured OpenAI-compatible API endpoints and credentials.
- Build metadata generation:
version_frozen.pyis now generated withprintfinstead of a heredoc and directly within the builder stage without requiring Git. - Docker version metadata:
__SEARXNG_*environment variables are now populated during the Docker build. - Package manager: Switched from npm to Bun.
- Frontend networking: Replaced Axios usage with native
fetch. - Chat loading:
chat.tsis now lazy-loaded. - Infinite scrolling: Rewrote
infinite_scroll.tsto use nativefetch. - Primary buttons: Replaced the solid
--primary-colorbackground with--brand-gradient. - Loading indicators: Loading dots now follow the Parch cyan, blue, and green gradient.
- Result links: Replaced the hardcoded Apple-style blue underline with
var(--primary-color). - Skip link: Updated to use the Parch brand gradient.
- Preferences color picker: Updated the Gitee theme swatch to use the Parch gradient.
- Bang font: Replaced hardcoded
SF Monowithvar(--mono-font-family). - Search box: Changed width from
clamp(400px, 50vw, 40rem)towidth: 100%, constrained by the parent container. - Index categories: Replaced stacked icon boxes and gradient backgrounds with inline text pills and subtle borders.
settings.yml: Updated the instance description to reference Parch Linux.- Client settings: Replaced Base64 encoding with plain JSON.
- Favicon declarations: Reduced favicon tags in
base.htmlfrom six to two.
Fixed
Preferencesclass missingself.cfg: Added theself.cfg: SettingsPrefattribute and required import toPreferences.__init__()(preferences.py:56).Preferencesschema type mismatch: Changed"preferences"inSCHEMAfrom a plain dictionary to theSettingsPrefstructure soapply_schemacorrectly decodes it (settings_defaults.py).- Null settings crash: Updated
apply_schemato usesettings.get(key) or {}whenpreferences:is absent or commented out insettings.yml. is_locked()attribute error: Updated the check to usehasattr(pref, 'lock')for theSettingsPrefstructure.- Missing
icon_smallimport: Added the requiredsmart/icons.htmlimport tosidebar.html. - Undefined
localesvariable: Addedkwargs['locales'] = LOCALE_NAMESto thewebapp.pyrender()function. - AI chat rendered when disabled: Prevented AI chat HTML from being rendered when the
ai_chatpreference is set tooff. - Dockerfile
COPY --exclude: Added the BuildKit syntax directive required forCOPY --exclude. - Dockerfile variable scoping: Fixed variable scoping and expansion issues in the multi-stage build.
- Missing
version_frozen.pyin dist: Fixed version metadata generation in the builder stage and exposed__SEARXNG_VERSIONthrough the build environment. - Template directory typo: Renamed
madules/tomodules/. - Template filename typo: Renamed
infoboxs.htmltoinfoboxes.html. - SCSS class typo: Renamed
madules-containertomodules-container. - SCSS variable typos: Corrected
loading-indecatortoloading-indicatoranddracula-backrgoundtodracula-background. - Fork container image URL: Corrected the image URL in
dist.dockerfile. - Fork release owner gate: Corrected the release owner check in
container.yml. - Build workflow Dockerfile path: Updated
build.ymlto reference the correct Dockerfile.
Removed
- Jabir AI backend: Removed hardcoded Jabir endpoints and API keys from
settings.yml. - Unused dependencies: Removed
openai,axios,markdown-it,svgo, andnodemon. - Extra suggestion container: Removed the unused
<div class="suggestion-box" id="suggestion"></div>fromsearch_box.html. - Unused fonts: Removed unused
.wofffiles and stale.woff2build artifacts. - Redundant favicon declarations: Removed four redundant favicon tags from
base.html.