Skip to content

Commit 39a7722

Browse files
wangrong1069deepin-bot[bot]
authored andcommitted
refactor: Service safety rectification
- Replace com.deepin.diskmanager policy with com.deepin.pkexec.deepin-diskmanager - Update all translation files to reflect new policy filename - Modify CMakeLists.txt to use deepin-policy-ts-convert for policy file generation - Update desktop file handling with deepin-desktop-ts-convert - Change authorization check in diskmanagerservice.cpp to use new action ID - Update debian/control to include pkexec dependency and deepin-gettext-tools - Fix installation paths for USB scripts from openconnect to deepin-diskmanager - Remove hardcoded translations from policy file, rely on translation system - Update DBus configuration to remove own policy requirement This migration improves security and follows modern authentication best practices.
1 parent 416fdd9 commit 39a7722

41 files changed

Lines changed: 207 additions & 294 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.reuse/dep5

Lines changed: 0 additions & 70 deletions
This file was deleted.

REUSE.toml

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
version = 1
2+
SPDX-PackageName = "deepin-diskmanager"
3+
SPDX-PackageSupplier = "UnionTech Software Technology Co., Ltd. <>"
4+
SPDX-PackageDownloadLocation = "https://github.com/linuxdeepin/deepin-diskmanager"
5+
6+
[[annotations]]
7+
path = ["README.md", "README.zh_CN.md"]
8+
precedence = "aggregate"
9+
SPDX-FileCopyrightText = "None"
10+
SPDX-License-Identifier = "CC-BY-4.0"
11+
12+
[[annotations]]
13+
path = ["CMakeLists.txt", "application/CMakeLists.txt", "log/CMakeLists.txt", "service/CMakeLists.txt", "test/CMakeLists.txt", "tests/CMakeLists.txt", "cmake/**"]
14+
precedence = "aggregate"
15+
SPDX-FileCopyrightText = "None"
16+
SPDX-License-Identifier = "CC0-1.0"
17+
18+
[[annotations]]
19+
path = ["application/assets/appicons.qrc", "application/assets/resource.qrc", "service/diskoperation/filesystems/filesystems.pri"]
20+
precedence = "aggregate"
21+
SPDX-FileCopyrightText = "None"
22+
SPDX-License-Identifier = "CC0-1.0"
23+
24+
[[annotations]]
25+
path = ["application/translations/**", "application/.tx/**"]
26+
precedence = "aggregate"
27+
SPDX-FileCopyrightText = "UnionTech Software Technology Co., Ltd."
28+
SPDX-License-Identifier = "CC0-1.0"
29+
30+
[[annotations]]
31+
path = "application/assets/deepin-diskmanager/**"
32+
precedence = "aggregate"
33+
SPDX-FileCopyrightText = "UnionTech Software Technology Co., Ltd."
34+
SPDX-License-Identifier = "CC0-1.0"
35+
36+
[[annotations]]
37+
path = ["application/assets/icons/deepin/**", "application/assets/icons", "application/assets/icons/deepin-diskmanager.svg"]
38+
precedence = "aggregate"
39+
SPDX-FileCopyrightText = "UnionTech Software Technology Co., Ltd."
40+
SPDX-License-Identifier = "GPL-3.0-only"
41+
42+
[[annotations]]
43+
path = "service/udev/**.sh"
44+
precedence = "aggregate"
45+
SPDX-FileCopyrightText = "UnionTech Software Technology Co., Ltd."
46+
SPDX-License-Identifier = "GPL-3.0-only"
47+
48+
[[annotations]]
49+
path = "service/udev/deepin-diskmanager-authenticateProxy"
50+
precedence = "aggregate"
51+
SPDX-FileCopyrightText = "Curtis Gedak"
52+
SPDX-License-Identifier = "GPL-2.0-or-later"
53+
54+
[[annotations]]
55+
path = ["service/assets/data/**", "application/assets/deepin-diskmanager.desktop", "application/assets/environments.h.in", "service/policy/com.deepin.pkexec.deepin-diskmanager.policy", "service/udev/99-diskmanager.rules"]
56+
precedence = "aggregate"
57+
SPDX-FileCopyrightText = "UnionTech Software Technology Co., Ltd."
58+
SPDX-License-Identifier = "CC0-1.0"
59+
60+
[[annotations]]
61+
path = ".gitignore"
62+
precedence = "aggregate"
63+
SPDX-FileCopyrightText = "None"
64+
SPDX-License-Identifier = "CC0-1.0"
65+
66+
[[annotations]]
67+
path = [".github/**", ".project.json", ".obs/workflows.yml"]
68+
precedence = "aggregate"
69+
SPDX-FileCopyrightText = "None"
70+
SPDX-License-Identifier = "CC0-1.0"
71+
72+
[[annotations]]
73+
path = ["debian/**", "rpm/**"]
74+
precedence = "aggregate"
75+
SPDX-FileCopyrightText = "None"
76+
SPDX-License-Identifier = "CC0-1.0"
77+
78+
[[annotations]]
79+
path = ["service/diskoperation/blockspecial.**", "service/diskoperation/supportedfilesystems.**", "service/diskoperation/filesystems/linuxswap.**"]
80+
precedence = "aggregate"
81+
SPDX-FileCopyrightText = "None"
82+
SPDX-License-Identifier = "CC0-1.0"

application/CMakeLists.txt

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ set(LINK_LIBS
3737

3838
#common resource names
3939
set(APP_RES_DIR "assets")
40-
set(APP_DESKTOP "${APP_RES_DIR}/deepin-diskmanager.desktop")
40+
set(APP_DESKTOP "deepin-diskmanager.desktop")
4141
set(APP_QRC "${APP_RES_DIR}/appicons.qrc")
4242
set(APP_ICONPATH "${APP_RES_DIR}/icons/deepin-diskmanager.svg")
4343

@@ -88,13 +88,20 @@ target_link_libraries(${PROJECT_NAME} ${LINK_LIBS} basestruct)
8888

8989
set(CMAKE_INSTALL_PREFIX /usr)
9090

91+
find_program(DESKTOP_TS_CONV deepin-desktop-ts-convert REQUIRED)
92+
add_custom_target(APP_DESKTOP
93+
ALL
94+
COMMAND ${DESKTOP_TS_CONV} ts2desktop ${CMAKE_CURRENT_SOURCE_DIR}/assets/${APP_DESKTOP} ${CMAKE_CURRENT_SOURCE_DIR}/translations/desktop ${APP_DESKTOP}.tmp
95+
COMMAND mv ${APP_DESKTOP}.tmp ${APP_DESKTOP}
96+
)
97+
9198
# Install files
9299
install(TARGETS ${PROJECT_NAME} DESTINATION bin)
93100
#file(GLOB APP_QM_FILES "translations/*.qm")
94101
#install(FILES ${APP_QM_FILES} DESTINATION share/${PROJECT_NAME}/translations)
95102
install(FILES ${DTNG_QM_FILES} DESTINATION share/${PROJECT_NAME}/translations)
96103
install(FILES ${APP_ICONPATH} DESTINATION share/icons/hicolor/scalable/apps)
97-
install(FILES ${APP_DESKTOP} DESTINATION share/applications)
104+
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${APP_DESKTOP} DESTINATION share/applications)
98105
install(DIRECTORY ${APP_RES_DIR}/deepin-diskmanager DESTINATION /usr/share/deepin-manual/manual-assets/application)
99106

100107

application/assets/deepin-diskmanager.desktop

Lines changed: 1 addition & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -9,72 +9,4 @@ TryExec=deepin-diskmanager
99
Type=Application
1010
X-Deepin-Vendor=deepin
1111

12-
# Translations:
13-
# Do not manually modify!
14-
GenericName[az]=Disk yardımçısı
15-
GenericName[bo]=སྡུད་སྡེར་དོ་དམ་ཆས།
16-
GenericName[ca]=Utilitat de disc
17-
GenericName[cs]=Nástroj pro správu disku
18-
GenericName[de]=Festplatten-Dienstprogramm
19-
GenericName[en_US]=Disk Utility
20-
GenericName[es]=Administrador de discos
21-
GenericName[fi]=Levytyökalu
22-
GenericName[fr]=Utilitaire de disque
23-
GenericName[gl_ES]=Utilidade de disco
24-
GenericName[hi_IN]=डिस्क साधन
25-
GenericName[hu]=Lemezkezelő
26-
GenericName[id]=Utilitas Diska
27-
GenericName[it]=Gestore Dischi
28-
GenericName[ja]=ディスク ユーティリティ
29-
GenericName[ko]=디스크 유틸리티
30-
GenericName[lo]=ເຄື່ອງມືຈັດການດິສ
31-
GenericName[ms]=Utiliti Cakera
32-
GenericName[nl]=Schijfhulpprogramma
33-
GenericName[pl]=Narzędzie dyskowe
34-
GenericName[pt]=Utilitário do Disco
35-
GenericName[pt_BR]=Utilitário de Disco
36-
GenericName[ro]=Utilitar Disc
37-
GenericName[ru]=Дисковая Утилита
38-
GenericName[sl]=Diskovno orodja
39-
GenericName[sq]=Mjet Për Disqe
40-
GenericName[sr]=Диск
41-
GenericName[tr]=Disk Yardımcısı
42-
GenericName[ug]=دىسكا باشقۇرغۇچىسى
43-
GenericName[uk]=Дисковий додаток
44-
GenericName[zh_CN]=磁盘管理器
45-
GenericName[zh_HK]=磁盤管理器
46-
GenericName[zh_TW]=磁碟管理器
47-
Name[az]=Deepin Disk Aləti
48-
Name[bo]=གཏིང་ཟབ་སྡུད་སྡེར་དོ་དམ་ཆས།
49-
Name[ca]=Utilitat de disc del Deepin
50-
Name[cs]=Nástroj pro správu disku
51-
Name[de]=Deepin Festplatten-Dienstprogramm
52-
Name[en_US]=Deepin Disk Utility
53-
Name[es]=Administrador de discos
54-
Name[fi]=Deepin levytyökalu
55-
Name[fr]=Utilitaire de disque Deepin
56-
Name[gl_ES]=Deepin Disk Utility
57-
Name[hi_IN]=दीपिन डिस्क साधन
58-
Name[hu]=Deepin® Lemezkezelő
59-
Name[id]=Utilitas Diska Deepin
60-
Name[it]=Gestore Dischi di Deepin
61-
Name[ja]=Deepin ディスク ユーティリティ
62-
Name[ko]=Deepin 디스크 유틸리티
63-
Name[lo]=ເຄື່ອງມືຈັດການດິສ
64-
Name[ms]=Utiliti Cakera Deepin
65-
Name[nl]=Deepin Schijfhulpprogramma
66-
Name[pl]=Narzędzie dyskowe Deepin
67-
Name[pt]=Utilitário do Disco Deepin
68-
Name[pt_BR]=deepin Utilitário de Disco
69-
Name[ro]=Utilitar Disc Deepin
70-
Name[ru]=Дисковая Утилита Deepin
71-
Name[sl]=Deepin diskovno orodje
72-
Name[sq]=Mjet Deepin Për Disqe
73-
Name[sr]=Дипин Диск
74-
Name[tr]=Deepin Disk Yardımcısı
75-
Name[ug]=Deepin دىسكا باشقۇرغۇچىسى
76-
Name[uk]=Дисковий додаток Deepin
77-
Name[zh_CN]=深度磁盘管理器
78-
Name[zh_HK]=Deepin 磁盤管理器
79-
Name[zh_TW]=Deepin 磁碟管理器
80-
12+
# Automatically generate translations

application/translations/policy/policy.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
<context>
33
<name>policy</name>
44
<message>
5-
<location filename="com.deepin.diskmanager!message" line="0"/>
5+
<location filename="com.deepin.pkexec.deepin-diskmanager!message" line="0"/>
66
<source>Authentication is required to read disk information</source>
77
<translation>Authentication is required to read disk information</translation>
88
</message>
99
<message>
10-
<location filename="com.deepin.diskmanager!description" line="0"/>
10+
<location filename="com.deepin.pkexec.deepin-diskmanager!description" line="0"/>
1111
<source>Run Disk Manager Need Authentication</source>
1212
<translation>Run Disk Manager Need Authentication</translation>
1313
</message>

application/translations/policy/policy_ar.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
<context>
33
<name>policy</name>
44
<message>
5-
<location filename="com.deepin.diskmanager!message" line="0"/>
5+
<location filename="com.deepin.pkexec.deepin-diskmanager!message" line="0"/>
66
<source>Authentication is required to read disk information</source>
77
<translation>المصادقة مطلوبة لقراءة معلومات القرص</translation>
88
</message>
99
<message>
10-
<location filename="com.deepin.diskmanager!description" line="0"/>
10+
<location filename="com.deepin.pkexec.deepin-diskmanager!description" line="0"/>
1111
<source>Run Disk Manager Need Authentication</source>
1212
<translation>إن تشغيل مدير الأقرص يحتاج إلى مصادقة</translation>
1313
</message>

application/translations/policy/policy_az.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
<context>
33
<name>policy</name>
44
<message>
5-
<location filename="com.deepin.diskmanager!message" line="0"/>
5+
<location filename="com.deepin.pkexec.deepin-diskmanager!message" line="0"/>
66
<source>Authentication is required to read disk information</source>
77
<translation>Disk məlumatlarını oxumaq üçün kimlik doğrulaması tələb olunur</translation>
88
</message>
99
<message>
10-
<location filename="com.deepin.diskmanager!description" line="0"/>
10+
<location filename="com.deepin.pkexec.deepin-diskmanager!description" line="0"/>
1111
<source>Run Disk Manager Need Authentication</source>
1212
<translation>Disk İdarəetməsini başlatmaq Kimlik Doğrulaması tələb edir</translation>
1313
</message>

application/translations/policy/policy_bo.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
<context>
33
<name>policy</name>
44
<message>
5-
<location filename="com.deepin.diskmanager!message" line="0"/>
5+
<location filename="com.deepin.pkexec.deepin-diskmanager!message" line="0"/>
66
<source>Authentication is required to read disk information</source>
77
<translation>སྡུད་སྡེར་གྱི་ཆ་འཕྲིན་ཀློག་ལེན་བྱེད་པར་དཔང་དཔྱད་བྱེད་དགོས།</translation>
88
</message>
99
<message>
10-
<location filename="com.deepin.diskmanager!description" line="0"/>
10+
<location filename="com.deepin.pkexec.deepin-diskmanager!description" line="0"/>
1111
<source>Run Disk Manager Need Authentication</source>
1212
<translation>Run Disk Manager Need Authentication</translation>
1313
</message>

application/translations/policy/policy_ca.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
<context>
33
<name>policy</name>
44
<message>
5-
<location filename="com.deepin.diskmanager!message" line="0"/>
5+
<location filename="com.deepin.pkexec.deepin-diskmanager!message" line="0"/>
66
<source>Authentication is required to read disk information</source>
77
<translation>Cal autenticació per llegir la informació del disc</translation>
88
</message>
99
<message>
10-
<location filename="com.deepin.diskmanager!description" line="0"/>
10+
<location filename="com.deepin.pkexec.deepin-diskmanager!description" line="0"/>
1111
<source>Run Disk Manager Need Authentication</source>
1212
<translation>Per executar el gestor de discs cal autenticació</translation>
1313
</message>

application/translations/policy/policy_cs.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
<context>
33
<name>policy</name>
44
<message>
5-
<location filename="com.deepin.diskmanager!message" line="0"/>
5+
<location filename="com.deepin.pkexec.deepin-diskmanager!message" line="0"/>
66
<source>Authentication is required to read disk information</source>
77
<translation>Pro čtení informací o disku je zapotřebí ověření se</translation>
88
</message>
99
<message>
10-
<location filename="com.deepin.diskmanager!description" line="0"/>
10+
<location filename="com.deepin.pkexec.deepin-diskmanager!description" line="0"/>
1111
<source>Run Disk Manager Need Authentication</source>
1212
<translation>Spuštění Správy disků vyžaduje ověření se</translation>
1313
</message>

0 commit comments

Comments
 (0)