Commit Graph

2297 Commits

Author SHA1 Message Date
reddevillg 7ecb38f429 fix: fix compiler error when use CPM nlohmann
Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-06-20 18:15:10 +08:00
reddevillg 13e7061526 fix: correctly pass argument by vector
use quoteBashArg if run with bash -c or write to bash script.

Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-06-20 18:15:10 +08:00
myml 3f690ff252 feat: add PackageInfoDisplay schema and update related components
在ll-cli list --json中添加install_time字段,用于表示包的安装时间
2025-06-20 14:54:51 +08:00
reddevillg af9af89c85 fix: fix build failure caused by removed file
Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-06-20 14:54:51 +08:00
reddevillg ca9afbdc63 fix: generate ld cache before builder run
Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-06-20 14:54:51 +08:00
reddevillg 5203e92111 fix: remove unused old config
Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-06-20 14:54:51 +08:00
reddevillg 45e482b7f1 fix: Correctly quote arguments in container entrypoint script
This change introduces a quoting mechanism (`quoteArg`) that:
1. Encloses each argument in single quotes.
2. Escapes embedded single quotes within an argument (e.g., `it's`
   becomes `'it'\''s'`).
This ensures that arguments are passed to the `exec` command
in the entrypoint script as single, intact units, even if they
contain spaces or single quotes.

Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-06-20 14:54:51 +08:00
transifex-integration[bot] 6962bb15fd i18n: Translate po/en_US.po in uk (#1224) 2025-06-19 15:55:46 +08:00
ice909 8e867156c2 fix: prevent crash in prune command after loop exit
Added missing return statements after loop.exit() calls in the prune
command
to prevent function execution from continuing after exit is called. This
fixes a crash that occurred when the function continued executing code
after
requesting the event loop to exit, potentially accessing invalid memory.
2025-06-19 15:55:46 +08:00
myml c4038b6bbc fix: handle renaming and copying of non-original linyaps files in exportDir
Updated the exportDir function to rename source files to include a ".linyaps.original" suffix if they are not already named as such, ensuring proper handling during the export process. This change prevents overwriting original files and maintains compatibility with existing export logic.
2025-06-17 21:00:07 +08:00
dengbo 98165a3912 fix: failed to export XDG_DATA_DIRS enviroment
Path "/usr/local/share:/usr/share" must be set when XDG_DATA_DIRS is
empty.
2025-06-16 15:23:00 +08:00
dengbo be762e3311 fix: dock application icons will lose when upgrading components
If have a custom desktop export directory, you need to ensure compatibility and export the desktop files to both the old and new directories.
2025-06-16 15:23:00 +08:00
dengbo 83c75cdc4b chore: revert LINGLONG_EXPORT_VERSION
Revert LINGLONG_EXPORT_VERSION and do not fix export dirs.
2025-06-13 18:42:58 +08:00
myml 783bff6956 fix: update size type to int64_t and initialize struct stat in UABPackager and Builder
Changed the size type from int to int64_t in both Builder and UABPackager to ensure proper handling of larger values. Additionally, initialized struct stat variables to improve code clarity and maintainability.
2025-06-13 18:42:58 +08:00
dengbo 29be0294c7 fix: failed to export uab use com.uniontech.foundation
Adds support for recognizing com.uniontech.foundation.
2025-06-13 11:18:35 +08:00
dengbo a6fde49e93 feat: add sub directory to prevent export file conflicts
Add sub directory using item commit to prevent export file conflicts.
2025-06-13 11:18:25 +08:00
transifex-integration[bot] ef66dce864
[linyaps] Updates for project Linyaps (#1216)
* i18n: Translate po/en_US.po in pl

96% of minimum 50% translated source file: 'po/en_US.po'
on 'pl'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in pl

97% of minimum 50% translated source file: 'po/en_US.po'
on 'pl'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in pl

98% of minimum 50% translated source file: 'po/en_US.po'
on 'pl'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in pl

98% of minimum 50% translated source file: 'po/en_US.po'
on 'pl'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in pl

98% of minimum 50% translated source file: 'po/en_US.po'
on 'pl'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in pl

99% of minimum 50% translated source file: 'po/en_US.po'
on 'pl'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in pl

100% translated source file: 'po/en_US.po'
on 'pl'.

* i18n: Translate po/en_US.po in pl

100% translated source file: 'po/en_US.po'
on 'pl'.

---------

Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2025-06-13 09:56:46 +08:00
transifex-integration[bot] 355ea9d268
[linyaps] Updates for project Linyaps (#1209)
* i18n: Translate po/en_US.po in es

93% of minimum 50% translated source file: 'po/en_US.po'
on 'es'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in ca

93% of minimum 50% translated source file: 'po/en_US.po'
on 'ca'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in pt_BR

93% of minimum 50% translated source file: 'po/en_US.po'
on 'pt_BR'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in fi

93% of minimum 50% translated source file: 'po/en_US.po'
on 'fi'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in en_GB

75% of minimum 50% translated source file: 'po/en_US.po'
on 'en_GB'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in sq

77% of minimum 50% translated source file: 'po/en_US.po'
on 'sq'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in pl

93% of minimum 50% translated source file: 'po/en_US.po'
on 'pl'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in uk

93% of minimum 50% translated source file: 'po/en_US.po'
on 'uk'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in zh_CN

93% of minimum 50% translated source file: 'po/en_US.po'
on 'zh_CN'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in ca

98% of minimum 50% translated source file: 'po/en_US.po'
on 'ca'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in ca

100% translated source file: 'po/en_US.po'
on 'ca'.

* i18n: Translate po/en_US.po in fi

95% of minimum 50% translated source file: 'po/en_US.po'
on 'fi'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in fi

97% of minimum 50% translated source file: 'po/en_US.po'
on 'fi'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in fi

98% of minimum 50% translated source file: 'po/en_US.po'
on 'fi'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in fi

100% translated source file: 'po/en_US.po'
on 'fi'.

* i18n: Translate po/en_US.po in zh_CN

94% of minimum 50% translated source file: 'po/en_US.po'
on 'zh_CN'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in zh_CN

94% of minimum 50% translated source file: 'po/en_US.po'
on 'zh_CN'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in zh_CN

95% of minimum 50% translated source file: 'po/en_US.po'
on 'zh_CN'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in zh_CN

97% of minimum 50% translated source file: 'po/en_US.po'
on 'zh_CN'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in zh_CN

99% of minimum 50% translated source file: 'po/en_US.po'
on 'zh_CN'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in zh_CN

100% translated source file: 'po/en_US.po'
on 'zh_CN'.

* i18n: Translate po/en_US.po in es

96% of minimum 50% translated source file: 'po/en_US.po'
on 'es'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in es

98% of minimum 50% translated source file: 'po/en_US.po'
on 'es'.

Sync of partially translated files: 
untranslated content is included with an empty translation 
or source language content depending on file format

* i18n: Translate po/en_US.po in es

100% translated source file: 'po/en_US.po'
on 'es'.

---------

Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2025-06-12 09:36:41 +08:00
ComixHe bab96b9d4e fix: building failed when using Qt5
Signed-off-by: ComixHe <ComixHe1895@outlook.com>
2025-06-11 16:47:37 +08:00
dengbo 62baa65f89 fix: add MIPS-specific compiler flag to avoid GOT overflow
MIPS architecture and globally applies the `-mxgot` flag to
compiler settings to address potential GOT overflow issues caused by
the architecture's strict limitations on GOT size.
2025-06-11 16:37:23 +08:00
ComixHe 67aff2635e fix: correct the way of exporting only-app UAB
Signed-off-by: ComixHe <ComixHe1895@outlook.com>
2025-06-11 16:37:05 +08:00
ComixHe 053fe005c5 chore: update linglong.yaml
Signed-off-by: ComixHe <ComixHe1895@outlook.com>
2025-06-11 16:37:05 +08:00
ComixHe 2615ac3525 refactor: remove all generators
Signed-off-by: ComixHe <ComixHe1895@outlook.com>
2025-06-11 16:37:05 +08:00
reddevillg d8a3191d2f fix: Preserve host's HOME env in container.
1. Ensure container HOME env matches the host environment exactly, we
   rely on it before support portal well.
2. remove /run/udev bind, udev database path and file across different
   versions are not guaranteed to be compatible.
3. add all_proxy env to defulat forward list.

Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-06-10 18:15:35 +08:00
ice909 627eb6721e fix: correct translation key in po/en_US.po
Signed-off-by: ice909 <gaochang1@uniontech.com>
2025-06-10 14:40:31 +08:00
ice909 728d6e610e chore: update i18n files
Signed-off-by: ice909 <gaochang1@uniontech.com>
2025-06-09 15:22:11 +08:00
dengbo b54fd561aa feat: add hooks features
Add hooks features for app install.
2025-06-06 17:33:22 +08:00
reddevillg a77322acc9 fix: preserve set-default compatibility
The set-default command ensures compatibility by setting the priority.
However, its modification to the priority is unidirectional and
one-time, subsequent set-priority invokes will not alter the default
state.

Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-06-05 10:20:14 +08:00
reddevillg c6386bdfe5 feat: modify the way container patches work
1. provide application level patches
2. application level patches will apply after global patches

move configure.h.in to src root, becasue lib utils depends on QT,
we don't want to introduce QT in certain scenarios.

Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-06-04 14:45:07 +08:00
reddevillg 975aa956f8 chore: Development cycle for version 1.9.0
Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-06-04 14:45:07 +08:00
dengbo 286d413070 fix: export desktop to a invalid export path
1. The custom desktop exported directory(CUSTOM_DATA_DIR) should only be in the share dir, not in the subdirectory;
2. LINGLONG_DATA_DIR should be exported;
3. need to update LINGLONG_EXPORT_VERSION to fix export.
2025-06-04 14:10:12 +08:00
ComixHe 881f0d5b1e refactor: move gvfs envs to OstreeRepo ctor
ensure that gvfs module wouldn't be loaded

Signed-off-by: ComixHe <ComixHe1895@outlook.com>
2025-06-04 10:14:31 +08:00
myml ec9011598f docs: add instructions for download debug symbolsy
Included detailed steps for accessing the container, locating the repository, and downloading the necessary debug symbol packages for system dependencies. This enhances the debugging process for applications relying on external libraries.
2025-06-03 21:16:27 +08:00
dengbo 4ed2ad9216 feat: add /etc/hosts to old generators
Bind /etc/hosts to the container to facilitate network debugging.
2025-06-03 09:34:08 +08:00
dengbo 59fbf35dea feat: bind /etc/hosts to container
Bind /etc/hosts to the container to facilitate network debugging.
2025-06-03 09:34:08 +08:00
reddevillg 6e99856fd4 fix: ensure bundle directory is clean
Containers may fail to start if the bundle directory contains residual
files or conflicts from previous run.

Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-05-29 11:37:38 +08:00
reddevillg 5916132cbf doc: update ll-builder multiarch build
Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-05-29 11:19:54 +08:00
reddevillg 01455c39f2 feat: support architecture specfied linglong.yaml
1. ll-builder use current directory as project directory.
2. Project yaml file(aka linglong.yaml) must reside within project
   directory or its subdirectories.
3. User can use -f option to specfy a project yaml file.
4. ll-builder will attempt to load project yaml file in the following
   order from the project root directory:
     - linglong.<arch>.yaml (architecture-specific)
     - linglong.yaml (generic)

Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-05-29 11:19:54 +08:00
reddevillg 1fc517735b fix: remove unused code
Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-05-29 11:19:54 +08:00
reddevillg 3e9f0b8902 fix: enable self adjust mount in builder run
If the current RunContext contains innerBinds, self-adjust mount must be
enabled; otherwise, execution may fail due to missing mount points.

Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-05-27 17:55:22 +08:00
reddevillg a8127f77de feat: prune support extension
Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-05-27 17:50:05 +08:00
reddevillg c5f2665f12 feat: Support extension environment variables
1. apply extension environment
2. apply app and extension permission binds
3. run ldconfig with -X option in cache generate phase
4. introduce dummy extension which is enabled by default

Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-05-27 17:32:58 +08:00
dengbo a2f07ca8fc fix: uninstall application exception output log
update-desktop-database and update-mime-database will generate system files in
specify a directory. these files do not belong to the applications and should not be
printed in the log.
2025-05-26 13:38:49 +08:00
myml 4056c534f0 docs: add multi-architecture build guide
添加架构支持列表
多架构项目结构指导
龙芯新旧世界迁移
2025-05-26 13:38:25 +08:00
ComixHe e7814c3cd3 refactor: add getBundlePath
make basePath and bundlePath to be required field

Signed-off-by: ComixHe <ComixHe1895@outlook.com>
2025-05-22 21:01:09 +08:00
ComixHe 3c85b1ef53 refactor: forwardEnv will forward all envs by default
fix typo

Signed-off-by: ComixHe <heyuming@deepin.org>
2025-05-22 20:25:45 +08:00
reddevillg c32d5d0e7f fix: fix crash when no runtime provided
Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-05-22 19:39:16 +08:00
dengbo 3f19ae56ef fix: update task ends abnormally when there is an application running
Should not terminate the update task when the sub-state is PackageManagerDone.
2025-05-22 16:43:23 +08:00
reddevillg d442ea6ba5 fix: fix export test command
Signed-off-by: reddevillg <reddevillg@gmail.com>
2025-05-22 13:10:41 +08:00
myml fc16401fa5 feat: handle missing refs gracefully in removeOstreeRef
在删除ref时, 如果ostree不存在对应的ref, 不需要报错,
避免因缓存不一致导致无法卸载应用
2025-05-22 13:08:29 +08:00