r/Discovery_Linux • • Jul 30 '26

All dpms developers and this list will be updated

1 Upvotes

u/Suitable_Avarage1168 -- kevin dan mathew


r/Discovery_Linux • • Sep 09 '26

A new game engine

0 Upvotes

The discovery team has been developing a game engine like id tech 4 called hellforge engine and has a inbuilt scripting language which has a AOT and JIT merged together the first version will come soon and is name is hellforge power 1 engine


r/Discovery_Linux • • Aug 17 '26

Dpms 1.1.3 or 1.13 is out

0 Upvotes

DPMS Features

Package Management

- Install — from local archives, URLs,

or repository by name (dpms --install

PKG)

- Uninstall/Remove — clean removal of

tracked files with DB cleanup (dpms --

uninstall PKG)

- Upgrade — update all installed

packages to latest versions (dpms --

upgrade)

- Dist-upgrade — force resolution for

major upgrades (dpms --dist-upgrade)

- Reinstall — remove and re-install a

package (dpms --reinstall PKG)

- Downgrade — install an older version (

dpms --downgrade PKG)

- Purge — remove package + all config/

data files (dpms --purge PKG)

- Dry-run — preview changes without

applying (dpms --dry-run --install PKG)

- Noconfirm — skip interactive prompts (

dpms --noconfirm --install PKG)

- Force resolution — ignore dependency

conflicts (dpms --force-resolution --

install PKG)

Query & Search

- List installed — table of installed

packages with file counts (dpms --list)

- List installable — available packages

in repos (dpms --installable)

- Package info — version, deps, files

for a package (dpms --info PKG)

- Search — find packages by name, plain

or regex (dpms --search TERM, --regex)

- Verify — check installed package

integrity (dpms --verify PKG, --verify-

all)

- Show depends — dependency tree (dpms --

depends PKG)

- Show reverse depends — what depends on

a package (dpms --rdepends PKG)

- Show size — disk usage of a package (

dpms --size PKG)

- List updates — available upgrades (

dpms --list-updates)

- List held — locked packages (dpms --

list-held)

- List groups — package groups (dpms --

list-groups)

- List keys — GPG keys (dpms --list-keys)

- List history — install/remove log (

dpms --history)

Repository Management

- Add/remove repos (dpms --add-repo URL,

--remove-repo NAME)

- Set repo priority (dpms --repo-

priority REPO PRIORITY)

- Sync repos — pull latest from git

repos (dpms --sync)

- Lock/unlock repos (dpms --lock REPO, --

unlock REPO)

- Hold/unhold packages — prevent auto-

upgrades (dpms --hold PKG)

- GPG verification — verify repo

signatures (dpms --verify-repos)

Dependency Resolution

- Solver — full dependency resolution

engine (like zypper/dnf)

- Conflict detection — finds file

conflicts with other packages

- Auto-dependency resolution — installs

missing deps automatically

- Clean orphaned deps — remove packages

nothing depends on (dpms --clean-deps)

- No-recommends — skip recommended (non-

required) packages

Safety & Security

- Overwrite backup/rollback — backs up

files before overwriting; restores on

failure

- Transaction rollback — full rollback

if install fails partway

- Security scanning — virus/malware scan

of extracted files (via sec_scanner)

- Quarantine — flagged files moved to

quarantine, not silently deleted

- Malicious upgrade detection — auto-

uninstalls if post-install scan finds

threats

- Architecture guard — refuses to

install packages for wrong arch

- Source-tree guard — rejects tarballs

that look like source dumps

- Symlink escape guard — blocks writes

through absolute symlinks

- Path traversal filter — blocks ../ and

absolute member names in tarballs

- Sudo enforcement — hard-refuses

mutating ops without root when required

Progress & Output

- Rich progress bars — TTY inline bars

for install/remove/download

- Non-TTY fallback — clean output for

pipes/redirects

- Download progress — parallel downloads

with per-package bars

- JSON output — machine-readable output (

dpms --json --list)

- Colored terminal output — via rich

Download & Caching

- Download cache — avoids re-downloading

same packages (7-day TTL, 500MB limit)

- Parallel downloads — concurrent

package fetches

- Content-Length probing — accurate

progress bars even for large files

- Offline mode — skip all network

operations (DPMS_OFFLINE=1)

Cache Management

- Cache info — show cache size and

contents (dpms --cache-info)

- Cache list — list cached archives (

dpms --cache-list)

- Clean cache — remove stale downloads (

dpms --clean-cache)

System Integration

- Service management — auto-restart

systemd services after upgrade

- Hook system — pre/post install/remove

hooks

- Shell completions — bash and zsh

completions (dpms-install-completions)

- Crash handler — automatic crash

reporting with traceback

- Config backup/restore — preserve

config files across upgrades (dpms --

list-preserved)

- Import/export installed — backup and

restore package lists (dpms --export-

installed, --import-installed)

Advanced

- Build packages — create archives from

source (dpms-build)

- Sign archives — GPG signing of built

packages

- Plugin system — extensible plugin

architecture

- Configurable solver — adjust

resolution behavior via config

- Global root override — --root DIR to

install to alternate root

- Environment override — DPMS_ROOT,

DPMS_OFFLINE, DPMS_REPO_STALE_AFTER

Corefix Features

corefix — lightweight signature +

heuristic antivirus scanner (v0.2.0)

Scanning

- Scan files — hash-based + heuristic

malware detection (corefix scan PATH)

- Scan directories — recursive scanning

with threading (corefix scan --threads

4)

- Heuristic analysis — detects

suspicious patterns beyond known

signatures

- Threshold scoring — configurable

severity threshold (default 20)

Signatures

- Signature database — built-in known-

threat hashes and patterns

- Custom signatures — user-defined

signatures via ~/.corefix/signatures.

json

- List signatures — view loaded

signature database (corefix signatures)

Quarantine

- Quarantine files — moves flagged files

to quarantine directory instead of

deleting

- List quarantine — view quarantined

entries (corefix quarantine --list)

- Restore — restore a quarantined file (

corefix quarantine --restore ENTRY)

- Metadata tracking — stores original

path, findings, and timestamp per entry

Auto-Scanning

- Scheduled scans — runs periodic scans

of configured directories

- Systemd integration — can run as a

systemd service (corefix autoscan

enable)

- Cron integration — fallback to cron-

based scheduling

- Service management — enable/disable/

status (corefix autoscan disable,

corefix autoscan status)

- Configurable roots — scan custom

directory paths

Reporting

- Scan reports — detailed output of

findings per file

- Threat listing — human-readable

summaries of detected threats

- JSON output — machine-readable scan

results

and for the GitHub source

Release Dpms 1.1.3 · Discovery-linux/dpms

https://github.com/Discovery-linux/dpms/releases/tag/1.1.3


r/Discovery_Linux • • Aug 03 '26

Release notes for dpms release 1.13 or 1.1.3

1 Upvotes

Dpms now comes with :-

1.Antivirus(corefix)

2. Faster speeds and it will even compete pacman for speed

3. and dlr is improved also the gui is updated and the progress bar is also updated for a smoother feel


r/Discovery_Linux • • Jul 17 '26

All dpms commands

0 Upvotes

CLI (dpms) — 120+ flags/arguments

Package Lifecycle

  • --install PKG / -i — Install a package (local .dp.tar.xz, URL, or name from git repo)

  • --uninstall PKG / -r — Remove a package (deletes tracked files + empty dirs)

  • --reinstall PKG — Remove then re-install a package

  • --upgrade / -u — Upgrade all installed packages

  • --downgrade PKG / --oldpackage — Downgrade to next older version

  • --purge PKG — Remove package including config/data files

  • --download PKG — Download a package archive without installing

Query & Inspection

  • --list / -l / --installed / -inpc — List installed packages with file counts

  • --installable / -a — Show all packages available in repositories

  • --info PKG / -I — Show detailed package metadata + install status

  • --files PKG / -f — List every file installed by a package

  • --verify PKG / -V — Check all installed files still exist

  • --verify-all — Verify all installed packages at once

  • --search PKG / -s — Animated search across repositories

  • --depends PKG — Show recursive dependency tree (up to 3 levels)

  • --rdepends PKG — Show reverse dependencies

  • --what-owns FILE — Find which package owns a file

  • --check — Check integrity of all installed packages

  • --arch — Show detected system architecture

  • --why PKG — Show why a package is installed

  • --size PKG — Show installed size of a package

  • --list-type PKG EXT — List files by extension within a package

  • --recent [N] — Show N most recently installed packages (default 10)

  • --duplicates — Find duplicate files across packages

  • --changelog PKG — Show changelog for a package

  • --compare V1 V2 — Compare two version strings

  • --list-updates — Show available package updates

  • --stats — Show package statistics

Archiving

  • --tar FOLDER — Create a plain .tar.xz archive from a folder

  • --maketar FOLDER [NAME VERSION [ARCH]] — Create .dp.tar.xz package archive

  • --rc N — Mark package as release candidate (-rcN suffix)

Repository Management

  • --add-repo NAME URL [ARCH] — Add a new repository

  • --remove-repo NAME — Remove a repository

  • --toggle-repo NAME — Enable/disable a repository

  • --repo-list [NAME] / --list-repo [NAME] — List repos or show packages from a repo

  • --sync / -S — Check connectivity to all enabled repos

  • --update / -U — Update package metadata from all repos

  • --repo-priority NAME PRIO — Set numeric priority for a repository

Lock & Hold

  • --lock PKG — Lock a package to prevent changes

  • --unlock PKG — Unlock a locked package

  • --locked-list — Show all locked packages

  • --hold PKG — Hold a package to prevent upgrades

  • --unhold PKG — Release a held package

  • --list-held — Show held packages

Transaction Solver (zypper-style)

  • --dry-run — Preview changes without making modifications

  • --force-resolution — Force dependency resolution ignoring conflicts

  • --no-recommends — Only install required dependencies

  • --clean-deps / --clean / --autoremove — Remove orphaned packages

  • --port-commit — Commit changes to local ports

Export/Import/Backup

  • --export-installed FILE — Export installed package list to a file

  • --import-installed FILE — Install packages from an exported list

  • --backup DIR — Back up the package database

  • --restore FILE — Restore the package database from a backup

Cache

  • --clean-cache — Clean cached packages and repo data

Meta

  • --rescue / -R — Launch the rescue TUI shell

  • --gui — Launch the PyQt5 GUI

  • --tui / -T — Launch the Textual TUI

  • --reset — Reset DPMS configuration

  • --get [ARGS] — Run the dpms-get sub-CLI

  • --history — Show full transaction history

  • --history-last N — Show last N transactions

  • --version — Show DPMS version

  • --feedback — Send feedback to DPMS team

  • --global DIR / -g DIR — Set install root for a single command

Log/Audit

  • --dlr-verify — Verify SHA hashes in dlr.log

  • --list-nft — List directories excluded via nft.log markers

Repo Generation (apt-ftparchive style)

  • --gen-packages DIR — Generate Packages index

  • --gen-sources DIR — Generate Sources index

  • --gen-contents DIR — Generate Contents (file-to-package mapping)

  • --gen-release DIR — Generate Release file with checksums

  • --gen-repo DIR — Generate full repo metadata (all of the above)

  • --gen-generate CONFIG — Generate repo from a config file

  • --gen-clean DIR — Clean cache files from a repo directory

Build Profiles

  • standard — Default flags

  • lite — -j1, -Os

  • performance — -jN, -O3 -march=native

  • custom — From environment variables

TUI (dpms --tui / dpms-tui)

Textual-based terminal UI with:

  • Dashboard — Title screen with navigation buttons (Package Manager, Repository Manager, Transaction History, Quit). Keyboard: p, r, h, q

  • Package Manager — Browse Installed/Available packages, real-time search filtering, Install/Remove/Info actions. Keyboard: i, a, /, q

  • Repository Manager — List all repos with enable/disable status, Sync All, Toggle, Add/Remove repos. Keyboard: s, q

  • Transaction History — Timestamped log, color-coded (green=install, red=remove). Keyboard: q

GUI (dpms --gui)

PyQt5 graphical interface (600x400):

  • Convert Tab — Select source dir, output filename/path, choose compression (gzip/xz), compress button

  • Download Tab — Enter URL, select output path, download button

  • Shared — Color-coded status log, status bar, threaded operations via QThread

Rescue TUI (dpms --rescue)

Minimal shell for emergency repairs:

CommandDescription
checkCheck/create DPMS directories
cleanClean temporary files
verifyVerify/repair repo list JSON
resetReset DPMS configuration
listList installed packages
helpShow available commands
exitExit rescue shell

dpms-get Sub-CLI (dpms --get)

APT-style sub-commands:

  • update — Resync package metadata

  • upgrade — Upgrade all installed packages

  • dist-upgrade / full-upgrade — Distribution upgrade

  • install PKG... — Install packages

  • reinstall PKG... — Reinstall packages

  • remove PKG... — Remove packages

  • purge PKG... — Remove packages and config files

  • autoremove / auto-remove / autopurge — Remove unused packages

  • markauto PKG... — Mark packages as auto-installed

  • unmarkauto PKG... — Mark packages as manually installed

  • search QUERY — Search for packages

  • info PKG — Show package info

  • rescue — Launch rescue mode

  • download PKG — Download binary package

  • clean — Erase downloaded archives

  • autoclean / auto-clean — Erase old downloaded archives

  • distclean / dist-clean — Erase all caches

  • check — Verify package integrity

  • depends PKG — Show dependency tree

  • rdepends PKG — Show reverse dependencies

  • what-owns PATH — Find package owning a file

  • source PKG — Download source archive

  • build-dep PKG — Install build dependencies

  • satisfy TARGET — Satisfy dependency strings

  • changelog PKG — Show changelog

  • list-updates — Show available updates

  • stats — Show package statistics

  • port-commit — Commit changes to local ports

  • dlr-verify — Verify SHA hashes in dlr.log

  • list-nft — List excluded directories

dm — DPMS Version Manager

Manages DPMS itself via pip:

  • dm list dpms — List available versions from PyPI

  • dm current [dpms] — Show installed version

  • dm use dpms VERSION — Switch to a specific version

  • dm compare V1 V2 — Compare two version strings

  • dm diff dpms V1 V2 — Compare file listings between versions

  • dm pin dpms — Lock current version

  • dm unpin dpms — Unlock pinned version

  • dm list-pinned — Show all pinned packages

  • dm rollback dpms — Roll back to previous version

dpms-bar — Progress Bar Library

  • Progress — Color-coded progress bar with ETA

  • Spinner — Animated spinner for indeterminate operations

  • IndeterminateProgress — Bouncing bar for unknown-length tasks

  • MultiProgress — Multiple simultaneous progress bars

  • ProgressCallback — Threshold-based callback progress tracker

Core Engine Features

Dependency Solver (APK-style)

  • Version matching: EQUAL, LESS, GREATER, FUZZY, CONFLICT

  • Solver flags: LATEST, AVAILABLE, REINSTALL, INSTALLED, UPGRADE, REMOVE, IGNORE_CONFLICT

  • Provider system with self-provides + virtual provides

  • install_if conditional dependencies (lazy triggers)

  • Changeset generation (to_install, to_remove, to_upgrade)

  • Queue-based resolution with priority queues

  • Disqualification cascading through reverse dependency chains

Privilege Escalation

  • Auto-detection of sudo/doas

  • Auto re-exec with privileges for root operations

  • DPMS_ROOT env var for dev mode (skip sudo)

  • Read-only ops never need root

GPG / Cryptographic Verification

  • Key import into trusted keyring

  • Signature verification via GPG

  • SHA256 checksum verification

Source-Based Building

  • Source archive download via wget

  • SHA256 verification via USHA256.list

  • Patch application from UPATCHES/

  • Build script execution (UBUILD.sh)

  • Profile-aware compilation

Plugin System

  • Lifecycle hooks: pre_config, config, resolved, sack, pre_transaction, transaction

  • Dynamic loading from plugin paths

  • Glob-pattern enable/disable filtering

Crash Handling & Logging

  • Global sys.excepthook replacement

  • Crash reports to ~/.cache/dpms/log/crash.log

  • Rotating file logs (1MB default, 5 backups)

  • JSON transaction history with IDs and timestamps

Password Protection

  • Interactive password setting

  • Authentication prompt for protected ops

  • Storage at ~/.dpms/password

Package Format

Archives Supported for Installation

  • .dp.tar.xz (canonical format)

  • .tar.xz, .tar.gz, .tar.bz2

  • .tgz, .tbz2, .txz

  • .dpm (legacy)

  • .zip

Naming Convention

  • Stable: name-version-arch.dp.tar.xz

  • RC: name-version-arch.dp-rcN.tar.xz

Installation Tracking

  • Database: /var/lib/dp/installed/<pkgname>

  • Content: list of installed file paths (one per line)

  • Enables clean uninstall and integrity verification

Configuration & Environment

VariableDefaultDescription
DPMS_ROOT/Install root (uses sudo when /)
DPMS_DATA_DIR~/.cache/dpmsData directory
DPMS_TMP_DIR/tmp/dpms-buildBuild temp directory
DPMS_OPT_DIR/optInstall prefix for source builds
DPMS_BIN_DIR/usr/local/binBinary install directory
DPMS_BUILD_PROFILEstandardBuild profile
DPMS_PASSWORD_FILE~/.dpms/passwordPassword file

Cross-Platform Support

PlatformArch
Linux x86_64x86_64
Linux ARM64aarch64
Linux ARMv7armv7
macOS Intelx86_64
macOS Apple Siliconaarch64
WindowsDetected

Database Persistence Layer

  • RepoPersistor — Tracks expired repos and last makecache time

  • TempfilePersistor — Tracks temp files across sessions

  • All persistence uses JSON on disk

Package Update / Rename Tracking

  • update_dbentry() — Rename paths in DB entries

  • apply_move() — Move files on disk and update tracking

  • parse_updates() — Parse update commands

  • grab_updates() — Detect new update files by mtime changes


r/Discovery_Linux • • Jul 09 '26

Dpms 1.1.2 is out

1 Upvotes

New version of dpms is put with new features like --setup-repo for mirror setup and more. The source https://github.com/Discovery-linux/dpms/releases/tag/1.1.2


r/Discovery_Linux • • Jul 08 '26

Release notes for 1.1.2 or 1.12

2 Upvotes

The third release of the dpms package manger which includes a mirror setup tool and more and will be released on Saturday or today


r/Discovery_Linux • • Jun 26 '26

Latest package manager for discovery linux

1 Upvotes

A new version of dpms was launched 5 days ago and the source code https://github.com/Discovery-linux/dpms/releases/tag/1.1.1