# Winapps 安裝筆記(理解 KDE 選單的邏輯) KDE Neon 在依照官方教學安裝 WinApps 後 Desktop Entry 沒有直接出現在 App 清單中(只能用搜尋的) 確認 .desktop 檔案存在,後來發現是檔案中 Category 導致 (系統不認得 WinApps 這個類別,導致直接忽略 .desktop 檔) 此外,搜尋後 icon 顯示不正常(與 .desktop 檔中定義不符) 在經歷一番波折後,搞懂正常在應用清單中顯示 Apps 還有其圖標 並且嘗試要如何在安裝後新增一個 WinApps 專屬 Submenu (過程盡量不依靠 `kmenuedit` 選單編輯器軟體,因為發現會造成滿多問題的,包括新增很多重複但不需要的檔案,以及前述提到的問題幾乎都與此軟體建立的 config 檔有很大的關係,此 config 檔混雜且紀錄許多不必要資訊,導致不知名的問題發生。所以希望不依賴此軟體的情況下讓應用程式選單正常顯示) ## System Path Submenu Config: * `/usr/share/desktop-directories/<XXX>.directory` * `/etc/xdg/menus/applications-merged/<XXX>.menu` App Entry: * `/usr/share/applications/<APP>.desktop` ## User Path Submenu Config: * `~/.local/share/desktop-directories/<XXX>.directory` * `~/.config/menus/applications-merged/<XXX>.menu` App Entry: * `~/.local/share/applications/<APP>.desktop` ## 新增選單中的 Submenu  XXX.directory 的內容(請自行替換 XXX 成想要的名字): ``` [Desktop Entry] Icon=<Icon_Path> Name=XXX Type=Directory ``` XXX.menu 的內容(請自行替換 XXX 成想要的名字) ```xml= <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN" "http://www.freedesktop.org/standards/menu-spec/menu-1.0.dtd"> <Menu> <Name>Applications</Name> <Menu> <Name>XXX</Name> <Directory>XXX.directory</Directory> <Include> <Filename><APP>.desktop</Filename> <Filename><APP>.desktop</Filename> <Filename><APP>.desktop</Filename> ...... </Include> </Menu> </Menu> ``` ## KDE 選單沒有更新??? 如果 .desktop 已存在,但沒有顯示在所有應用程式清單 或是已經新增以上檔案,但 Submenu 沒有出現 請刪除 `~/.config/menus/applications-kmenuedit.menu` 此為 `kmenuedit` 產生的檔案 如果曾經編輯選單,可能會先以此檔案優先 導致新建立的 Entry 沒有出現在清單中) 並執行(更新桌面組態 Cache): ``` kbuildsycoca5 --noincremental kbuildsycoca6 --noincremental ``` ## Icon 問題??? 為什麼指定了某路徑下的 icon 圖片,但沒顯示出來? 應該是個 Bug,Plasma 在有套 icon-theme 的情況下似乎不會完全尊重使用者設定 而是會被圖片檔名影響...... 如果該 Icon 圖片檔名叫做 icon.png,預設會跑出一個空白的 App 圖示 所以只要加上個前綴(例如:msppt_icon.png)即可正常顯示 (也許之後會寫個 Script 來處理這些安裝後的步驟......)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up