diff --git a/Makefile b/Makefile index 66dc4a9..4773082 100644 --- a/Makefile +++ b/Makefile @@ -77,70 +77,69 @@ build: depend prepare uninstall: @echo "Uninstall ..." @for LANG in $$(find ./locale -iname "*.po" -print | sed -En "s/.+_([[:alpha:]]+)\.po/\1/p" | sort -u); do \ -# PATH_FILE_MO="${DESTDIR}${PREFIX}/share/locale/$${LANG}/LC_MESSAGES/${PKGNAME}.mo"; \ PATH_FILE_MO="${DESTDIR}/usr/share/locale/$${LANG}/LC_MESSAGES/${PKGNAME}.mo"; \ $(RM) "$${PATH_FILE_MO}"; \ done @for SIZE in 16x16 32x32 48x48 scalable; do \ - $(RM) "${DESTDIR}${PREFIX}/share/icons/hicolor/$${SIZE}/apps/com.ublinux.${PKGNAME}.svg"; \ - $(RM) "${DESTDIR}${PREFIX}/share/icons/hicolor/$${SIZE}/apps/com.ublinux.${PKGNAME}.png"; \ + $(RM) "${DESTDIR}/usr/share/icons/hicolor/$${SIZE}/apps/com.ublinux.${PKGNAME}.svg"; \ + $(RM) "${DESTDIR}/usr/share/icons/hicolor/$${SIZE}/apps/com.ublinux.${PKGNAME}.png"; \ done @for FILE_SVG in $(wildcard *.svg); do \ for SIZE in 16x16 32x32 48x48 scalable; do \ - $(RM) "${DESTDIR}${PREFIX}/share/icons/hicolor/$${SIZE}/status/$${FILE_SVG%.*}".{svg,png,jpg}; \ + $(RM) "${DESTDIR}/usr/share/icons/hicolor/$${SIZE}/status/$${FILE_SVG%.*}".{svg,png,jpg}; \ done; \ done @for FILE_ICON in $(wildcard icons/*/*.svg); do \ SUB_NAME=$${FILE_ICON#*/}; SUB_NAME=$${SUB_NAME%/*}; \ - $(RM) "${DESTDIR}${PREFIX}/share/icons/hicolor/scalable/$${SUB_NAME}/$${FILE_ICON##*/}"; \ + $(RM) "${DESTDIR}/usr/share/icons/hicolor/scalable/$${SUB_NAME}/$${FILE_ICON##*/}"; \ done - @$(RM) "${DESTDIR}${PREFIX}/bin/${PKGNAME}" + @$(RM) "${DESTDIR}${PREFIX}/bin/${PKGNAME}" "${DESTDIR}${PREFIX}/bin/${PKGNAME}-root" "${DESTDIR}${PREFIX}/bin/${PKGNAME}-user" @$(RM) "${DESTDIR}${PREFIX}/share/applications/${PKGNAME}.desktop" @if [[ "${PREFIX}" == @("/usr"|"/usr/") ]]; then \ $(RM) "${DESTDIR}${PREFIX}/share/polkit-1/actions/com.ublinux.${PKGNAME}.policy"; \ else \ -# $(RM) "${DESTDIR}${PREFIX}/share/polkit-1/actions/com.ublinux.${PKGNAME}$${PREFIX//\//-}.policy"; \ $(RM) "${DESTDIR}/usr/share/polkit-1/actions/com.ublinux.${PKGNAME}$${PREFIX//\//-}.policy"; \ fi @if [[ -z "${DESTDIR}" ]]; then \ - [[ -d "${DESTDIR}${PREFIX}/share/icons/hicolor/" ]] && gtk-update-icon-cache -fiq "${DESTDIR}${PREFIX}/share/icons/hicolor/" &>/dev/null || true; \ + [[ -d "${DESTDIR}/usr/share/icons/hicolor/" ]] && gtk-update-icon-cache -fiq "${DESTDIR}/usr/share/icons/hicolor/" &>/dev/null || true; \ update-desktop-database --quiet &>/dev/null || true; \ - [[ -d "${DESTDIR}${PREFIX}/share/applications" ]] && touch "${DESTDIR}${PREFIX}/share/applications" &>/dev/null || true; \ + [[ -d "${DESTDIR}/usr/share/applications" ]] && touch "${DESTDIR}/usr/share/applications" &>/dev/null || true; \ fi @echo "Uninstall: OK" install: check uninstall @echo "Install ..." @for LANG in $$(find ./locale -iname "*.po" -print | sed -En "s/.+_([[:alpha:]]+)\.po/\1/p" | sort -u); do \ - install -dm755 "${DESTDIR}${PREFIX}/share/locale/$${LANG}/LC_MESSAGES"; \ -# PATH_FILE_MO="${DESTDIR}${PREFIX}/share/locale/$${LANG}/LC_MESSAGES/${PKGNAME}.mo"; \ + install -dm755 "${DESTDIR}/usr/share/locale/$${LANG}/LC_MESSAGES"; \ PATH_FILE_MO="${DESTDIR}/usr/share/locale/$${LANG}/LC_MESSAGES/${PKGNAME}.mo"; \ PKGNAME_PO="./locale/${PKGNAME}_$${LANG}.po"; [[ -f "$${PKGNAME_PO}" ]] || PKGNAME_PO= ; \ msgfmt --verbose --use-fuzzy --output-file "$${PATH_FILE_MO}" - < <(msgcat --use-first --no-wrap $${PKGNAME_PO} ./locale/*_$${LANG}.po); \ done @for SIZE in 16 32 48; do \ - install -dm755 "${DESTDIR}${PREFIX}/share/icons/hicolor/$${SIZE}x$${SIZE}/apps"; \ - rsvg-convert -w $${SIZE} -h $${SIZE} -f svg --keep-image-data "icons/apps/com.ublinux.${PKGNAME}.svg" -o "${DESTDIR}${PREFIX}/share/icons/hicolor/$${SIZE}x$${SIZE}/apps/com.ublinux.${PKGNAME}.svg"; \ + install -dm755 "${DESTDIR}/usr/share/icons/hicolor/$${SIZE}x$${SIZE}/apps"; \ + rsvg-convert -w $${SIZE} -h $${SIZE} -f svg --keep-image-data "icons/apps/com.ublinux.${PKGNAME}.svg" -o "${DESTDIR}/usr/share/icons/hicolor/$${SIZE}x$${SIZE}/apps/com.ublinux.${PKGNAME}.svg"; \ done @for FILE_ICON in $(wildcard icons/*/*.svg); do \ SUB_NAME=$${FILE_ICON#*/}; SUB_NAME=$${SUB_NAME%/*}; \ - install -Dm644 -t "${DESTDIR}${PREFIX}/share/icons/hicolor/scalable/$${SUB_NAME}" $${FILE_ICON}; \ + install -Dm644 -t "${DESTDIR}/usr/share/icons/hicolor/scalable/$${SUB_NAME}" $${FILE_ICON}; \ done @install -Dm755 -t "${DESTDIR}${PREFIX}/bin/" "${CMAKE_BUILD_DIR}/${PKGNAME}" + @ln -s "/usr/bin/ubl-exec-app" "${DESTDIR}${PREFIX}/bin/${PKGNAME}-root" + @ln -s "/usr/bin/ubl-exec-app" "${DESTDIR}${PREFIX}/bin/${PKGNAME}-user" @install -Dm644 -t "${DESTDIR}${PREFIX}/share/applications/" "${PKGNAME}.desktop" @if [[ "${PREFIX}" == @("/usr"|"/usr/") ]]; then \ install -Dm644 -t "${DESTDIR}${PREFIX}/share/polkit-1/actions/" "com.ublinux.${PKGNAME}.policy"; \ else \ -# install -Dm644 "com.ublinux.${PKGNAME}.policy" "${DESTDIR}${PREFIX}/share/polkit-1/actions/com.ublinux.${PKGNAME}$${PREFIX//\//-}.policy"; \ + install -Dm644 "com.ublinux.${PKGNAME}.policy" "${DESTDIR}/usr/share/polkit-1/actions/com.ublinux.${PKGNAME}$${PREFIX//\//-}-local.policy"; \ install -Dm644 "com.ublinux.${PKGNAME}.policy" "${DESTDIR}/usr/share/polkit-1/actions/com.ublinux.${PKGNAME}$${PREFIX//\//-}.policy"; \ -# sed -e "s+/usr/bin+${PREFIX}/bin+" -e "s+\.run+$${PREFIX//\//-}\.run+g" -i "${DESTDIR}${PREFIX}/share/polkit-1/actions/com.ublinux.${PKGNAME}$${PREFIX//\//-}.policy"; \ - sed -e "s+/usr/bin+${PREFIX}/bin+" -e "s+\.run+$${PREFIX//\//-}\.run+g" -i "${DESTDIR}/usr/share/polkit-1/actions/com.ublinux.${PKGNAME}$${PREFIX//\//-}.policy"; \ + sed -e "s+/usr/bin+/usr/bin+" -e "s+\.run+$${PREFIX//\//-}\.run+g" -i "${DESTDIR}/usr/share/polkit-1/actions/com.ublinux.${PKGNAME}$${PREFIX//\//-}.policy"; \ + sed -e '\|annotate key=|s|/usr/bin|${PREFIX}/bin|' -e '/action id=/s/\.run/${PKGIDENT}\.run/' -i ${DESTDIR}/usr/share/polkit-1/actions/com.ublinux.${PKGNAME}-local.policy;\ fi @if [[ -z "${DESTDIR}" ]]; then \ - ldconfig -n ${DESTDIR}${PREFIX}/lib; \ - [[ -d "${DESTDIR}${PREFIX}/share/icons/hicolor/" ]] && gtk-update-icon-cache -fiq "${DESTDIR}${PREFIX}/share/icons/hicolor/" &>/dev/null || true; \ + ldconfig -n ${DESTDIR}/usr/lib; \ + [[ -d "${DESTDIR}/usr/share/icons/hicolor/" ]] && gtk-update-icon-cache -fiq "${DESTDIR}/usr/share/icons/hicolor/" &>/dev/null || true; \ update-desktop-database --quiet &>/dev/null || true; \ - [[ -d "${DESTDIR}${PREFIX}/share/applications" ]] && touch "${DESTDIR}${PREFIX}/share/applications" &>/dev/null || true; \ + [[ -d "${DESTDIR}/usr/share/applications" ]] && touch "${DESTDIR}/usr/share/applications" &>/dev/null || true; \ fi @echo "Install: OK" diff --git a/com.ublinux.ubl-settings-resourcequota.policy b/com.ublinux.ubl-settings-resourcequota.policy index 0d1be60..94a4f4c 100644 --- a/com.ublinux.ubl-settings-resourcequota.policy +++ b/com.ublinux.ubl-settings-resourcequota.policy @@ -5,6 +5,7 @@ UBLinux https://ublinux.com + com.ublinux.ubl-settings-resourcequota Run CPU and RAM quota settings as root 以 root 身份運行 CPU 和 RAM 配額設定 @@ -127,7 +128,7 @@ auth_admin auth_admin - /usr/bin/ubl-settings-resourcequota + /usr/bin/ubl-settings-resourcequota-root true diff --git a/ubl-settings-resourcequota.desktop b/ubl-settings-resourcequota.desktop index d4a9246..13dcc71 100755 --- a/ubl-settings-resourcequota.desktop +++ b/ubl-settings-resourcequota.desktop @@ -176,65 +176,65 @@ Comment[as]=CPU আৰু RAMৰ কোটা ছেটিংছ গ্ৰুপ Comment[ar]=إعدادات حصص وحدة المعالجة المركزية والذاكرة للمجموعات ومستخدمي النظام Comment[af]=CPU- en RAM-kwota-instellings vir groepe en stelsellyngebruikers Keywords=resource;quota; -Keywords[zh_TW]=資源;配額; -Keywords[zh_CN]=资源;配额; -Keywords[te]=సంవన;క్వోట; -Keywords[uk]=ресурси;квота; -Keywords[tr]=kaynak;kotası; -Keywords[ta]=வள;கோட்டா; -Keywords[sv]=resurs;kvot; -Keywords[sr@latin]=resurs;kvota; -Keywords[sr]=ресурс;квота; -Keywords[sl]=viri;kvota; -Keywords[sk]=zdroje;kvóta; -Keywords[ru]=ресурсы;квота; -Keywords[ro]=resurse;cota; -Keywords[pt_BR]=recurso;cota; -Keywords[pt]=recurso;cota; -Keywords[pl]=zasób;kwota; -Keywords[pa]=ਸੰਸਾਧਨ;ਕੋਟਾ; -Keywords[or]=ସଂସାଧନ;କୋଟା; -Keywords[oc]=ressorsa;quota; -Keywords[nn]=ressursar;kvote; -Keywords[nl]=bron;krediet; -Keywords[mr]=साधन;कोटा; -Keywords[ml]=റിസോഴ്‌സ്;ക്വോട്ട; -Keywords[lv]=resurss;kvota; -Keywords[lt]=išteklius;kvota; -Keywords[ko]=리소스;쿼터; -Keywords[kn]=ಸಂಪನ್ಮೂಲ;ಕ್ವೋಟ; -Keywords[kk]=ресурс;квота; -Keywords[ka]=რესურსი;კვოტა; -Keywords[ja]=リソース;クォータ; -Keywords[it]=risorsa;quota; -Keywords[id]=sumber;kuota; -Keywords[ia]=resource;quota; -Keywords[hu]=erőforrás;kvóta; -Keywords[hr]=resurs;kvota; -Keywords[hi]=संसाधन;कोटा; -Keywords[he]=משאבים;מכסה; -Keywords[gu]=સંસાધન;ક્વોટા; -Keywords[gl]=recurso;cota; -Keywords[fur]=risorse;quota; -Keywords[fr]=ressource;quota; -Keywords[fi]=resurssi;kiintiö; -Keywords[eu]=iturburu;kuota; -Keywords[es]=recurso;cuota; -Keywords[eo]=rimedo;kvoto; -Keywords[en_GB]=resource;quota; -Keywords[el]=πόρος;ποσόστωση; -Keywords[de]=Ressource;Quote; -Keywords[da]=ressource;kvote; -Keywords[cs]=zdroj;kvóta; -Keywords[ca]=recurs;quota; -Keywords[bn_IN]=সম্পদ;কোটা; -Keywords[bg]=ресурси;квота; -Keywords[ast]=recurrecia;cuota; -Keywords[as]=সম্পদ;কোটা; -Keywords[ar]=الموارد;الحصة; -Keywords[af]=hulpbron;kwota; +Keywords[zh_TW]=resource;quota;資源;配額; +Keywords[zh_CN]=resource;quota;资源;配额; +Keywords[te]=resource;quota;సంవన;క్వోట; +Keywords[uk]=resource;quota;ресурси;квота; +Keywords[tr]=resource;quota;kaynak;kotası; +Keywords[ta]=resource;quota;வள;கோட்டா; +Keywords[sv]=resource;quota;resurs;kvot; +Keywords[sr@latin]=resource;quota;resurs;kvota; +Keywords[sr]=resource;quota;ресурс;квота; +Keywords[sl]=resource;quota;viri;kvota; +Keywords[sk]=resource;quota;zdroje;kvóta; +Keywords[ru]=resource;quota;ресурсы;квота; +Keywords[ro]=resource;quota;resurse;cota; +Keywords[pt_BR]=resource;quota;recurso;cota; +Keywords[pt]=resource;quota;recurso;cota; +Keywords[pl]=resource;quota;zasób;kwota; +Keywords[pa]=resource;quota;ਸੰਸਾਧਨ;ਕੋਟਾ; +Keywords[or]=resource;quota;ସଂସାଧନ;କୋଟା; +Keywords[oc]=resource;quota;ressorsa;quota; +Keywords[nn]=resource;quota;ressursar;kvote; +Keywords[nl]=resource;quota;bron;krediet; +Keywords[mr]=resource;quota;साधन;कोटा; +Keywords[ml]=resource;quota;റിസോഴ്‌സ്;ക്വോട്ട; +Keywords[lv]=resource;quota;resurss;kvota; +Keywords[lt]=resource;quota;išteklius;kvota; +Keywords[ko]=resource;quota;리소스;쿼터; +Keywords[kn]=resource;quota;ಸಂಪನ್ಮೂಲ;ಕ್ವೋಟ; +Keywords[kk]=resource;quota;ресурс;квота; +Keywords[ka]=resource;quota;რესურსი;კვოტა; +Keywords[ja]=resource;quota;リソース;クォータ; +Keywords[it]=resource;quota;risorsa;quota; +Keywords[id]=resource;quota;sumber;kuota; +Keywords[ia]=resource;quota;resource;quota; +Keywords[hu]=resource;quota;erőforrás;kvóta; +Keywords[hr]=resource;quota;resurs;kvota; +Keywords[hi]=resource;quota;संसाधन;कोटा; +Keywords[he]=resource;quota;משאבים;מכסה; +Keywords[gu]=resource;quota;સંસાધન;ક્વોટા; +Keywords[gl]=resource;quota;recurso;cota; +Keywords[fur]=resource;quota;risorse;quota; +Keywords[fr]=resource;quota;ressource;quota; +Keywords[fi]=resource;quota;resurssi;kiintiö; +Keywords[eu]=resource;quota;iturburu;kuota; +Keywords[es]=resource;quota;recurso;cuota; +Keywords[eo]=resource;quota;rimedo;kvoto; +Keywords[en_GB]=resource;quota;resource;quota; +Keywords[el]=resource;quota;πόρος;ποσόστωση; +Keywords[de]=resource;quota;Ressource;Quote; +Keywords[da]=resource;quota;ressource;kvote; +Keywords[cs]=resource;quota;zdroj;kvóta; +Keywords[ca]=resource;quota;recurs;quota; +Keywords[bn_IN]=resource;quota;সম্পদ;কোটা; +Keywords[bg]=resource;quota;ресурси;квота; +Keywords[ast]=resource;quota;recurrecia;cuota; +Keywords[as]=resource;quota;সম্পদ;কোটা; +Keywords[ar]=resource;quota;الموارد;الحصة; +Keywords[af]=resource;quota;hulpbron;kwota; Type=Application -Exec=ubl-settings-resourcequota +Exec=ubl-settings-resourcequota-user Icon=com.ublinux.ubl-settings-resourcequota Terminal=false StartupNotify=true @@ -242,3 +242,67 @@ StartupWMClass=ubl-settings-resourcequota X-XfcePluggable=true X-UBLPluggable=true Categories=XFCE;GTK;Settings;DesktopSettings;X-XFCE-SettingsDialog;X-XFCE-SystemSettings;X-UBL-SettingsManager;X-UBL-SystemSettings; + +Actions=RunAsRoot; + +[Desktop Action RunAsRoot] +Exec=ubl-settings-resourcequota-root +Icon=com.ublinux.ubl-settings-resourcequota +Name=Run as root +Name[zh_TW]=以 root 身分執行 +Name[zh_CN]=以 root 身份运行 +Name[te]=రూట్గా అమలు చేయి +Name[uk]=Запустити від root +Name[tr]=Root olarak çalıştır +Name[ta]=ரூட்டாக இயக்கு +Name[sv]=Kör som root +Name[sr@latin]=Pokreni kao root +Name[sr]=Покрени као root +Name[sl]=Zaženi kot root +Name[sk]=Spustiť ako root +Name[ru]=Запустить от root +Name[ro]=Rulează ca root +Name[pt_BR]=Executar como root +Name[pt]=Executar como root +Name[pl]=Uruchom jako root +Name[pa]=ਰੂਟ ਵਜੋਂ ਚਲਾਓ +Name[or]=ରୁଟ୍ ଭାବରେ ଚଲାନ୍ତୁ +Name[oc]=Executar coma root +Name[nn]=Køyr som root +Name[nl]=Uitvoeren als root +Name[mr]=रूट म्हणून चालवा +Name[ml]=റൂട്ടായി പ്രവർത്തിപ്പിക്കുക +Name[lv]=Palaist kā root +Name[lt]=Vykdyti kaip root +Name[ko]=root 권한으로 실행 +Name[kn]=ರೂಟ್ ಆಗಿ ಚಲಾಯಿಸಿ +Name[kk]=root ретінде іске қосу +Name[ka]=root-ად გაშვება +Name[ja]=root として実行 +Name[it]=Esegui come root +Name[id]=Jalankan sebagai root +Name[ia]=Executar como root +Name[hu]=Futtatás rootként +Name[hr]=Pokreni kao root +Name[hi]=रूट के रूप में चलाएँ +Name[he]=הרץ כ-root +Name[gu]=રૂટ તરીકે ચલાવો +Name[gl]=Executar como root +Name[fur]=Eseguî come root +Name[fr]=Exécuter en tant que root +Name[fi]=Suorita root-käyttäjänä +Name[eu]=Exekutatu root gisa +Name[es]=Ejecutar como root +Name[eo]=Ruli kiel root +ame[en_GB]=Run as root +Name[el]=Εκτέλεση ως root +Name[de]=Als root ausführen +Name[da]=Kør som root +Name[cs]=Spustit jako root +Name[ca]=Executa com a root +Name[bn_IN]=রুট হিসেবে চালান +Name[bg]=Изпълни като root +Name[ast]=Executar como root +Name[as]=ৰুট হিচাপে চলাওক +Name[ar]=تشغيل كـ root +Name[af]=Voer uit as root \ No newline at end of file