Snap aracılığıyla yüklenen programlar Başlatıcı'da görünmüyor


37

Ubuntu 16.04'e güncellendi ve ilk defa ek paketler deneniyor.

Bu yüzden bazı stl dosyalarını görüntülemek için meshlab gerekli. Pitn giriş yapmak için koştum. Bulunan ek paketlerin komut satırının yüklenmesi için oturum açma gereği duymadı.

sudo snap install meshlab

ve hey presto meshlap kurulu, giriş şifresi yok. Komut satırından düzgün çalışıyor. Ancak program başlatıcıda görünmüyor. Bu neden? Snap paketleri başlatıcıda görünmüyor mu? Bunu nasıl düzeltebilirim?

Yanıtlar:


40

Eğer zsh kullanıyorsanız, ek ikili ve masaüstü dizinleri ortam değişkenlerinize otomatik olarak eklenmeyecektir. Bunu çözmek için, / etc / zsh / zprofile dosyasına (Arch'dan alınan) şu satırı ekledim:

emulate sh -c 'source /etc/profile'

Bu, / etc / profile dosyanızı /etc/profile.d/* kaynaklarına ve uygun PATH, vb.

Varsayılan bash profilinin geri kalanının tamamını eklemeden, yalnızca ek dizinleri yolunuza eklemek için:

emulate sh -c 'source /etc/profile.d/apps-bin-path.sh'

1
Teşekkürler! 17.10'da da iyi çalışıyor. Zsh'ye geçmek de benim için bu sorunu gündeme getirdi.
danwit

2
Bunu kurulum sürecinde düzeltmeli ya da snap için bir SSS / Sorun Giderme adımı eklemeliler.
BradErzwh

1
Teşekkürler, 18.10'da benim için çalıştı. Umarım bu gelecekte bir şekilde düzeltilecektir.
Pavel Davydov

1
Brilliant, ne yazık ki hala 19.04 tarihinde bir sorun
jhole89

11

Anlık sistemde yerleşiktir, ancak bağlantıyı panonuza eklemeniz gerekir. Program tipini başlatmak için

snap run meshlab

Bir kez çalışır durumdayken, simgeye sağ tıklayın ve "dash" e tıklayın.


7

Benim için, Ubuntu 18.04 altında Wayland / ZSH kombinasyonu ile de ilgili görünüyor. Değişkende /var/lib/snapd/desktoplistelenmesine rağmen XDG_DATA_DIRS(bu işlem tarafından yapılır /etc/profile.d/apps-bin-path.sh), başlatıcı bu klasördeki uygulamaları tanımıyor.

Hızlı bir geçici çözüm, istediğiniz masaüstü dosyalarını sym-link etmek, örneğin:

ln -s /var/lib/snapd/desktop/applications/rubymine_rubymine.desktop .local/share/applications

5

Snap paketleri başlatıcıda görünmüyor mu?

Snap, uygun .desktop dosyalarını gönderdiği sürece yaparlar. Yalnızca Meshlab'ın meshlabserveruygun bir masaüstü dosyası var (ve gerçekten de, başlatıcımda görünüyor). meshlab.Desktop dosya Ancak exec çalışıyor meshlab.meshlabsadece kullanılarak gerekirken, meshlab. Sonuç olarak, görünmüyor.

Bunu nasıl düzeltebilirim?

Kaçarsanız snap info meshlab, yayıncının iletişim bilgilerini görürsünüz. Onlara bir hata bildirmeni öneririm. O zamana kadar, her zaman meshlabCLI'den çalıştırabilir veya bunun için kendi .desktop dosyanızı oluşturabilirsiniz.


5

Kubuntu 18.04 Çalıştırmak benim için çözüm ekleyerek

export XDG_DATA_DIRS="$XDG_DATA_DIRS:/var/lib/snapd/desktop/"

gibi özel bir dosyaya snap-apps.shyer ~/.config/plasma-workspace/env. Ancak bu sadece Plazma 5 için geçerlidir ve önceden Ubuntu 18.10'da düzeltilebilir.

Dsager'ın cevabında daha önce de belirtildiği gibi, her zamanki /etc/profile.d/apps-bin-path.shişe yaramaz görünmüyor.


2
Bu mükemmel çalıştı - Kubuntu kullanıcısı.
john

Teşekkürler! Kubuntu'da benim için sorunu çözdüm.
Дмитрий Полянин

3

snap run meshlabTerminalden koşup durdurmanız gerekiyor, daha sonra uygulama listenizde Meshlab'ı göreceksiniz .


3

Başka birinin gönderisiyle ilgili yorum yapamadım. Ancak bu, dsager'ın Fedora 28'de bana yardımcı olan cevabını eklemek (söyleyebileceğim kadarıyla Wayland kullanıyor)

/ Var / lib / snapd / desktop / apps içindeki her bir dosyaya giriş yapmak için ~ / .bash_profile dosyasına aşağıdaki snip'i ekledim. Benzer şekilde, artık mevcut olmayan uygulamaların bağlantılarını, for satırındaki ve if satırındaki yolları değiştirerek ln'yi rm ile değiştirerek değiştirmek için değiştirilebilir.

for i in /var/lib/snapd/desktop/applications/*.desktop; do
    if [ ! -f ~/.local/share/applications/${i##*/} ];then
            ln -s /var/lib/snapd/desktop/applications/${i##*/} ~/.local/share/applications/${i##*/};
    fi;
done

Muhtemelen bunu başarmanın bir sürü yolu var, ama işe yarıyor.


1
Yararsız kullanımı ls. Yerine for in /var/lib/snapd/desktop/applications/*.desktop; do i="${i##*/}"; ...kullanın. Bunu başarmanın daha kısa bir yolu olacaktır ln -st ~/.local/share/applications /var/lib/snapd/desktop/applications/*.desktop 2>/dev/null.
David Foerster

İlk örneğinizi yürütmenin bir yolu olduğunu biliyordum, ancak başlangıçta bunu yazarken $ {i ## * /} bölümünü hatırlayamadım. Bu varyantı içerecek şekilde yazımı düzenleyeceğim. Bununla birlikte, son öneriniz, bağlantının zaten var olup olmadığını kontrol etmiyor, bu yüzden gereksiz yere ln komutunu tekrar çalıştırıyor. Aslında, yürütme sırasında ortaya çıkan işlem sayısını azaltmak için grepten kaçınmanın bir yolunu bulmak istedim. Yorumun için teşekkürler.
Eric Niconovich

İkinci önerim yapar hedef dosya eğer olay buysa, (giden yönlendirmeyi bir hata iletisi basar, zaten var ve eğer çek /dev/nullve böylece bastırılmış). Herhangi bir şeyin “faydasız” yapmaz: o çatallar ve exec bir var tek zaman ve bir sistem çağrı yapan symlink(2)veya symlinkat(2)her bir eşleşen dosya için. Dosya türünü ( stat(2)) ve ardından (koşullu olarak) çatal ve exec'i ln(1)çağırmak için bir döngü kullanıyorsanız, symlink*(2)bu daha “işe yaramaz” bir iş.
David Foerster

1

Blender ile aynı şey.

snap run blender

çalışır, ancak sorunu çözmedi.

Ben kopyalamak zorunda blender.desktopden /snap/blender/current/blender.desktopüzere /usr/share/applications(ile sudo) ve daha sonra tüm sabit edildi: blender gnome menülerdeki gösterileri ve birlikte Nautilus ortakları onu .blenddosyalar.

Anlıklarla cüceler arasında bir çeşit çatlak var gibi. Belki de ihtiyacımız olan şey çabuk gnome'dur (veya gnomey çıtırtı; ^).


1
Merhaba, söylediklerini yaptım ama şimdi yaptığım her program için iki simge yaptım ... i.imgur.com/aamlQJZ.png adresini ziyaret et.
Cirelli94

1

Kopya uygulamaları dan kısayol /var/lib/snapd/desktop/applications/için/usr/share/applications/

Örnek: sudo cp /var/lib/snapd/desktop/applications/brave_brave.desktop /usr/share/applications/

Bunu GalliumOS 3.0'da yapmak zorunda kaldım (Xubuntu tabanlı)


0

Aynı konuda Ubuntu 18.04'te de rastladım. Wayland ile bir sorun gibi görünüyor. Benim için çözüm, Wayland'dan Xorg'a geçmek oldu.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.