Jika Anda menginstal Aplikasi GUI (misalnya Kode VS, Pembuat GNOME, dan lain-lain), itu akan membuat file desktop di /usr/share/applications. Tetapi kotak alat memiliki sistem yang terisolasi (kecuali homedir) dan tidak akan mengikat.
Jika ada opsi untuk membuat file desktop darinya seperti:
$ toolbox desktop code.desktop
akan melakukan:
Juga tambahkan opsi untuk menghapus:
$ toolbox desktop code.desktop -r
untuk menghapus ~/.local/share/applications/toolbox_code.desktop dan ikon
Hai @oksoft-git! Ini terlihat menarik. Saya berpikir untuk memberikan sesuatu yang mirip dengan ini. Apakah Anda ingin membuat PR dengan fitur ini (tetapi tidak di Shell tetapi di Go untuk Toolbox versi baru ?
@debarshiray , bagaimana menurutmu?
Aku pergi untuk itu!
Fitur ini akan sangat menguntungkan pengguna silverblue karena Anda dapat dengan mudah menggunakan aplikasi dari wadah
Apakah mungkin untuk memasukkan integrasi biner dasar, untuk memungkinkannya mengekspor pembungkus perintah dasar ke sistem dasar atau apakah itu di luar cakupan proyek?
Sebagai pembungkus perintah yang saya maksud adalah pembungkus seperti ini untuk nano misalnya (mungkin lebih kompleks dari ini untuk beberapa program)
!/bin/bash
toolbox nano "$@"
(flatpak melakukan sesuatu seperti ini, dapat memeriksanya lebih lanjut)
Hai @sandorex ! Fitur yang Anda bicarakan sudah dilacak di sini: #145. Ini adalah salah satu prioritas setelah meluncurkan Toolbox yang diperbarui. Meskipun kedua fitur ini serupa, solusinya sangat berbeda.
Saya bertanya-tanya sekarang apakah memberi Toolbox kekuatan untuk membuat/mengedit file .desktop untuk aplikasi benar-benar cara yang tepat. Itu akan membutuhkan Toolbox untuk mengetahui di mana menemukan file .desktop yang ada, menemukan baris yang tepat, memperbaruinya dan memindahkan/menyalin file ke lokasi di mana desktop (tidak semua orang menggunakan GNOME Shell) akan menemukannya dan menggunakannya. Bagi saya ini tampak sebagai potongan besar logika yang tidak perlu yang tidak akan banyak berguna.
Alih-alih bagian dalam dokumentasi dengan instruksi cara memperbarui file .desktop yang ada terdengar lebih baik bagi saya.
Jika saya salah tentang kerumitannya, tolong, buktikan saya salah.
Saya mungkin salah tetapi file desktop dicari secara rekursif di ~/.local/share/applications
jadi direktori yang hanya berisi file desktop dari kotak alat (per wadah) dan kemudian hapus saja file desktop yang tidak ada di wadah tetapi modifikasi saya tidak bisa benar-benar menyederhanakan
Pendekatan kedua adalah memberikan tanggung jawab ini ke aplikasi lain ( toolbox-desktop-integration
) yang akan memungkinkan pemilihan file desktop untuk dibawa ke Host (menempatkannya di folder mereka akan menjadi pintar, seperti ~/.local/share/applications/_toolbox_XXX
mana XXX
adalah nama wadah)
Tertarik dengan pendapat Anda @HarryMichal
Ini hampir selesai, tetapi saya tidak dapat mengekstrak jalur ikon dari file desktop untuk disalin ke Host.
_edit_: Membuat alat khusus untuk itu akan lebih baik. Saya akan membuatnya kembali.
Yah, aku memilikinya. github.com/ondra05/toolbox-desktop
@ondra05 Kerja bagus!
Ada satu hal yang saya pribadi akan perbaiki (meskipun tidak perlu) dan itu menggunakan cat
untuk membaca file dari wadah, itu akan berfungsi dengan baik tetapi agak meretas, karena podman
membagikan gambar dengan toolbox
Anda dapat menggunakan podman cp
untuk menyalin file antara wadah dan host
Saya telah mempermainkan ide ini dalam skrip python
Sayangnya saya tidak punya waktu untuk melakukan aplikasi yang tepat, saya telah membuat UI tetapi GTK hanya sakit di pantat, mungkin saya akan melakukan aplikasi CLI saja suatu hari nanti (semoga)
Sayangnya saya tidak punya waktu untuk membuat aplikasi yang tepat
Saya pikir GUI untuk ini berlebihan. Imho ini harus ditangani dengan perintah ke arah toolbox export
dengan flag sebagai --remove
dan --list
.
Saya akan mencoba untuk melihat ke dalamnya. Saya ingin tahu apakah mungkin untuk menambahkan perintah toolbox export APP
yang memanggil, katakanlah, skrip python ini di dalam kotak alat dengan cara yang mirip dengan toolbox run export.py ARGS
. Meskipun jelas lebih baik untuk melakukannya secara langsung, ini hanya melibatkan penyalinan file dari /usr
toolbox ke $XDG_DATA_DIR
dan mungkin lebih mudah menggunakan skrip untuk itu. Saya tidak tahu apa pengelola kemungkinan ini.
Perhatikan bahwa ekstensi semacam itu harus mempertimbangkan banyak hal, misalnya masalah penanganan ikon tidak sepele.
Ini mirip dengan diskusi seputar penambahan run command , termasuk percakapan IRC ini dari #silverblue
di Freenode:
From #silverblue on Freenode:
15:56 <rishi> otaylor: alexlarsson: Hey! Do you have any thoughts on
https://github.com/debarshiray/toolbox/pull/76 ?
15:57 <rishi> In short, people want to be able to do "toolbox run emacs".
15:57 <rishi> And I am worried about encroaching on Flatpak territory.
15:58 <alexlarsson> I don't think its a huge problem.
15:58 <otaylor> rishi: I suspect we need such functionality if we want the
toolbox to be a serious tool that people rely on
15:58 <alexlarsson> No 2 tools will be 100% non-overlapping
15:59 <alexlarsson> and i can imagine using this in non-flatpak like way
15:59 <alexlarsson> toolbox run some-service
15:59 <otaylor> rishi: I'd be more worried about adding, say, menu item
management so that it looks like 'toolbox run emacs' is a real app
16:00 <alexlarsson> I mean, some people use flatpak for cli stuff
16:00 <rishi> otaylor: alexlarsson: Okay!
16:00 <alexlarsson> which is not quite the point
16:00 <alexlarsson> Still, it works
16:01 <alexlarsson> The main thing is that the design decisions that drive
toolbox and flatpak are driven by a particular usecase
16:01 <alexlarsson> Not that they can't be used other ways
16:03 <rishi> Yeah, toolbox is very clearly: "use jhbuild on Silverblue".
16:04 <rishi> walters would say "separate development prefix", but that's
about it, I think.
Sudah dimungkinkan untuk menambahkan toolbox run emacs
di file .desktop untuk aplikasi yang diinstal di dalam wadah. Memiliki perintah yang benar-benar mem-parsing dan membuat file .desktop adalah langkah lain ke arah yang sama, dan saya tidak yakin apakah itu satu langkah terlalu jauh.
@debarshiray apa pendapat Anda tentang skrip python yang menyalin file desktop, icondata, dan metadata? Saya sudah membuatnya dan berfungsi dengan baik.
Ini pasti salah satu cara untuk melakukannya. Namun, saya ragu untuk memasukkannya ke dalam Toolbox sekarang.
Saya tertarik untuk mengerjakan masalah ini!
...
tidak semua orang menggunakan GNOME Shell
...
Jika saya salah tentang kerumitannya, tolong, buktikan saya salah.
@HarryMichal Saya yakin kekhawatiran Anda tidak perlu.
Saat ini file .desktop dan tema file ikon dirancang untuk desktop-agnostik dan tunduk pada Spesifikasi XDG :
https://spesifikasi.freedesktop.org/
https://specifications.freedesktop.org/desktop-entry-spec/latest/index.html
https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html
Untuk semua:
bisakah kita mendesain fungsionalitas yang dibutuhkan sebagai plugin DNF
mungkin?
PS: baru sadar Flatpak sudah mengekspos aplikasi sehingga kami bisa meminjam kodenya jika diperlukan.
Saya belum menambahkan fitur uninstall, tetapi sepertinya tidak terlalu sulit.
Terima kasih @A6GibKm , tolong lakukan! :)
Komentar yang paling membantu
Aku pergi untuk itu!