Ваш пример показал файлы, и всё.
Мне нужно удалить всё после Icon= в .desktop Причём только для snap. Зачем мне это нужно?
Уменя есть тема иконок, в ней есть иконки для 123 snap программ. Я установил эти программы, получил их .desktop. К сожалению canonical плевать на разработчиков иконок. Во всех .desktop snap путь к иконке прописан вот так Icon=/snap/atom/36/usr/share/pixmaps/atom.png
Т.е. если иконка прописана так:
Icon=atom
Выбранная вами тема иконок покажет свою иконку, а если с прямым путём, то нет.
Решение проблемы - скрипт:
#!/bin/bash
# Script for fixing hardcoded icons. Script fix.sh written and maintained on GitHub
# at https://github.com/Foggalong/hardcode-fixer - addtions welcome!
# This script fix2.sh and tofix2.csv mod. ZMA.
# Copyright (C) 2014
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License (version 3+) as
# published by the Free Software Foundation. You should have received
# a copy of the GNU General Public License along with this program.
# If not, see <http://www.gnu.org/licenses/>.
# Version info
date=201710161 # [year][month][date][extra]
# Locations
local_icon="/home/${SUDO_USER:-$USER}/.local/share/icons/hicolor/48x48/apps/"
local_scalable_icon="/home/${SUDO_USER:-$USER}/.local/share/icons/hicolor/scalable/apps/"
global_apps=("/usr/share/applications/" "/usr/share/applications/antix/" "/usr/share/applications/data/" "/usr/share/applications/kde4/" "/usr/share/applications/kde5/" "/usr/share/apps/konsole/" "/usr/share/mimelnk/application/" "/usr/share/kde4/services/cantor/" "/usr/local/share/applications/" "/usr/local/share/applications/kde4/" "/usr/local/share/applications/kde5/" "/usr/share/xsessions/" "/var/lib/snapd/desktop/applications/")
local_apps=("/home/${SUDO_USER:-$USER}/.local/share/applications/" "/home/${SUDO_USER:-$USER}/.local/share/applications/kde4/" "/home/${SUDO_USER:-$USER}/.local/share/applications/kde5/")
global_icon="/usr/share/icons/hicolor/48x48/apps/"
global_scalable_icon="/usr/share/icons/hicolor/scalable/apps/"
steam_icon="${global_icon}steam.png"
# Allows timeout when launched via 'Run in Terminal'
function gerror() { sleep 3; exit 1; }
# Deals with the flags
if [ -z "$1" ]; then
mode="fix"
else
case $1 in
-l|--local)
mode="local";;
-r|--revert)
echo "This will undo all changes previously made."
while true; do
read -r -p "Are you sure you want to continue? " answer
case $answer in
[Yy]* ) mode="revert"; break;;
[Nn]* ) exit;;
* ) echo "Please answer [Y/y]es or [N/n]o.";;
esac
done;;
-h|--help)
echo -e \
"Usage: ./$(basename -- $0) [OPTION]\n" \
"\rFixes hardcoded icons of installed applications.\n\n" \
"\rCurrently supported options:\n" \
"\r -l, --local \t Only fixes local launchers.\n" \
"\r -r, --revert \t Reverts any changes made.\n" \
"\r -h, --help \t\t Displays this help menu.\n" \
"\r -v, --version \t Displays program version.\n"
exit 0 ;;
-v|--version)
echo -e "$(basename -- $0) $date\n"
exit 0 ;;
*)
echo -e "$(basename -- $0): invalid option -- '$1'"
echo -e "Try '$(basename -- $0) --help' for more information."
gerror
esac
fi
chown "${SUDO_USER:-$USER}" "tofix2.csv"
# Checks for root
if [[ $UID -ne 0 ]] && [ $mode != "local" ]; then
echo "The script must be run as root to (un)fix global launchers."
while true; do
read -r -p "Do you want to continue in local mode? " answer
case $answer in
[Yy]* )
if [ "$mode" == "fix" ]; then
mode="local"; break
elif [ "$mode" == "revert" ]; then
mode="l-revert"; break
fi;;
[Nn]* ) exit;;
* ) echo "Please answer [Y/y]es or [N/n]o.";;
esac
done
fi
# Itterating over lines of tofix2.csv, each split into an array
IFS=","
while read -r name launcher current new_icon; do
# Basic corrections
name=$(echo "$name" | sed -e "s/\r//g")
launcher=$(echo "$launcher".desktop | sed -e "s/\r//g")
current=$(echo "$current" | sed -e "s/\r//g")
new_icon=$(echo "$new_icon" | sed -e "s/\r//g")
filename=$(basename "$current")
extension="${filename##*.}"
# Escape non-standard and special characters in file names by creating a new variable
old_icon="${current//\\/\\\\}" # escape backslashes
old_icon="${old_icon//\//\\/}" # escape slashes
# Fixing code
if [ "$current" == "hardcoded" ]; then #checks if the icon path is hardcoded
if [ "$mode" == "local" ]; then
combined_apps=("${local_apps[@]}")
else
combined_apps=("${local_apps[@]}" "${global_apps[@]}")
fi
for app_location in "${combined_apps[@]}"
do
if [ -f "$app_location$launcher" ] && [ ! -f "$new_current" ] ; then
new_current=$(grep -Gq "Icon=*$" "$app_location$launcher")
fi
done
if [ -f "$new_current" ];then
sed -i "s/$name,$launcher,$current,$new_icon/$name,$launcher,$new_current,$new_icon/" "tofix2.csv"
fi
fi
if [ ! -d "$local_scalable_icon" ]; then
su -c "mkdir '$local_scalable_icon' -p" "${SUDO_USER:-$USER}"
fi
if [ ! -d "$local_icon" ]; then
su -c "mkdir '$local_icon' -p" "${SUDO_USER:-$USER}"
fi
if [ "$mode" == "fix" ] || [ "$mode" == "local" ]; then
# Local & Steam launchers
for local_app in "${local_apps[@]}"
do
if [ -f "$local_app$launcher" ]; then
if [ "$current" != "steam" ]; then
if grep -Gq "Icon=$current$" "$local_app$launcher"; then
# Local launchers
echo "L: Fixing $name..."
if [ -f "$current" ]; then # checks if icon exists to copy
if [ ! -d "$local_icon" ]; then
su -c "mkdir '$local_icon' -p" "${SUDO_USER:-$USER}"
fi
if [ "$extension" == "png" ] || [ "$extension" == "xpm" ];then
if [ ! -f "$local_icon$new_icon" ];then
cp "$current" "$local_icon$new_icon"
fi
fi
if [ "$extension" == "svg" ];then
if [ ! -f "$local_scalable_icon$new_icon" ];then
cp "$current" "$local_scalable_icon$new_icon"
fi
fi
fi
sed -i "s/Icon=${old_icon}.*/Icon=$new_icon/" "$local_app$launcher"
fi
else
# Steam launchers
if [ -f "$steam_icon" ]; then # checks if steam icon exists to copy
if grep -Gq "Icon=$current$" "$local_app$launcher"; then
echo "S: Fixing $name..."
if [ ! -d "$local_icon" ]; then
su -c "mkdir '$local_icon' -p" "${SUDO_USER:-$USER}"
fi
if [ ! -f "$local_icon${new_icon}.png" ];then
cp "$steam_icon" "$local_icon${new_icon}.png"
fi
sed -i "s/Icon=steam.*/Icon=$new_icon/" "$local_app$launcher"
fi
fi
fi
fi
done
# Global launchers
for global_app in "${global_apps[@]}"
do
if [ $mode != "local" ] && [ -f "$global_app$launcher" ]; then
if grep -Gq "Icon=$current$" "$global_app$launcher"; then
echo "G: Fixing $name..."
if [ -f "$current" ]; then # checks if icon exists to copy
if [ "$extension" == "png" ] || [ "$extension" == "xpm" ];then
if [ ! -f "$global_icon$new_icon" ] ;then
cp "$current" "$global_icon$new_icon"
fi
fi
if [ "$extension" == "svg" ];then
if [ ! -f "$global_scalable_icon$new_icon" ];then
cp "$current" "$global_scalable_icon$new_icon"
fi
fi
fi
sed -i "s/Icon=${old_icon}.*/Icon=$new_icon/g" "$global_app$launcher"
fi
fi
done
# Reversion code
elif [ "$mode" == "revert" ] || [ "$mode" == "l-revert" ]; then
# Local revert
for local_app in "${local_apps[@]}"
do
if [ -f "$local_app$launcher" ]; then
if grep -Gq "Icon=$new_icon$" "$local_app$launcher"; then
echo "F: Reverting $name..."
rm -f "$local_icon$new_icon"*
rm -f "$local_scalable_icon$new_icon"*
sed -i "s/Icon=${new_icon}.*/Icon=$old_icon/" "$local_app$launcher"
fi
fi
# Steam revert
if [ -f "$local_app$launcher" ] && [ -f "$steam_icon" ]; then
if grep -Gq "Icon=$new_icon$" "$local_app$launcher"; then
echo "S: Reverting $name..."
rm -f "$local_icon$new_icon"*
rm -f "$local_scalable_icon$new_icon"*
sed -i "s/Icon=${new_icon}.*/Icon=$old_icon/" "$local_app$launcher"
fi
fi
done
# Global revert
for global_app in "${global_apps[@]}"
do
if [ $mode != "l-revert" ] && [ -f "$global_app$launcher" ]; then
if grep -Gq "Icon=$new_icon$" "$global_app$launcher"; then
echo "G: Reverting $name..."
rm -f "$global_icon$new_icon"*
rm -f "$global_scalable_icon$new_icon"*
sed -i "s/Icon=${new_icon}.*/Icon=$old_icon/" "$global_app$launcher"
fi
fi
done
fi
done < "tofix2.csv"
К нему есть список исправлений на 1279 программ tofix2.csv, где иконки жёстко привязаны к своим папкам. Здесь показана только часть, весь не влезает в сообщение:
Application,Launcher,Path,Icon Name
2048,2048,/usr/share/2048/meta/apple-touch-icon.png,2048
1-to-1 Assistance,1-to-1_assistance,1-to-1_assistance.png,1-to-1_assistance
1-to-1 Voice,1-to-1_voice,1-to-1_voice.png,1-to-1_voice
2048-Qt,2048-qt,/usr/share/pixmaps/2048-qt.xpm,2048-qt
3D Acceleration,driconf,/usr/share/driconf/driconf-icon.png,driconf-icon
4Pane,4Pane,/usr/share/4Pane/bitmaps/4PaneIcon48.png,4Pane
8BitMMO,8BitMMO,steam,steam_icon_250420
Aard Dictionary,aarddict,aarddict.png,aarddict
AB-Transfers,abtransfers,/usr/share/abtransfers/bank/transfer/128x128.png,abtransfers
Account authentication,signon-ui,,preferences-login
AClock,AClock,/usr/lib/GNUstep/Applications/AClock.app/Resources/AClock.tiff,aclock.app
AClock,AClock,/usr/lib/GNUstep/Applications/AClock.app/Resources/clock.png,AClock
Aconnectgui,aconnectgui,/usr/share/pixmaps/aconnectgui.xpm,aconnectgui
ADSL/PPPOE configuration,pppoeconf,/usr/share/pixmaps/pppoeconf.xpm,pppoeconf
Adun,UL,/usr/lib/GNUstep/Applications/UL.app/Resources/icon.tiff,Adun
Advene Video annotation,advene,/usr/share/advene/pixmaps/icon_advene32.png,advene
AfterStep,AfterStep,/usr/share/afterstep/desktop/icons/large/AfterStep3,AfterStep3
Aghermann,aghermann,@PKGDATADIR@/aghermann.png,aghermann
Ajuda do Receitanet,rfb-receitanet-ajuda,/opt/Programas RFB/Receitanet/imagens/Ajuda.xpm,Ajuda
All Video Downloader,allvideodownloader,/opt/allvideodownloader/icons/allvideodownloader.png,allvideodownloader
AllTray 0.7.5.1dev,alltray,alltray.png,alltray
Однако в этот список нельзя добавить правила для snap из-за слишком частых обновлений.
Со snap не было бы проблем если бы при каждом обновлении программ не изменялся бы путь к иконке - /snap/atom/36, 37, 38 и т.д.
Команда добавленная в скрипт:
# Faking Canonical snap
find /home/${SUDO_USER:-$USER}/.local/share/applications/ /var/lib/snapd/desktop/applications/ -name '*.desktop' -exec sed -ri 's|^(Icon=)/snap.*|\1|' {} +
и правила в tofix2.csv :
AnimationMaker,animationmaker_animationmaker,,animationmaker-snap
Archaeopteryx,archaeopteryx_archaeopteryx,,archaeopteryx-snap
Atom,atom_atom,,atom-snap
Atomify LAMMPS,atomify_atomify,,atomify-snap
Audovia,audovia_Audovia,,audovia-snap
B1 Free Archiver,b1freearchiver_b1,,b1-snap
Balloon Pop,balloon-pop_snap,,balloon-pop-snap
Baugeschichte,baugeschichte_baugeschichte,,baugeschichte-snap
Bayam,bayam_bayam,,bayam-snap
BitTicker,bitticker_bitticker,,bittickerlogo-snap
Bubble Pop,bubble-pop_snap,,bubble-pop-snap
Bucklespring,bucklespring_buckle,,bucklespring-snap
Buka,buka_buka,,buka-snap
Bussard,bussard_bussard,,bussard-snap
Chinese Calendar,chinese-cal_chinese-calendar,,chinesecalendar-snap
ChronoBurn Calorie Counter,chronoburn_chronoburn,,chronoburn-snap
CloudCompare Viewer,cloudcompare_ccViewer,,ccViewer-snap
CloudCompare,cloudcompare_cloudcompare,,cloudcompare-snap
cloudtag,cloudtag_cloudtag,,cloudtag-snap
codebreakers,codebreakers_codebreakers,,codebreakers-snap
Collision,collision_collision,,collision-snap
4 in a Line,connect4_snap,,connect4-snap
CubicSDR,cubicsdr-casept_cubicsdr,,cubicsdr-snap
Cuety,cuety_Cuety,,Cuety-snap
Habitica,desktop-habitica_desktop-habitica,,habitica-snap
devRantron,devrantron_devrantron,,devrantron-snap
Discord,discord_discord,,discord-snap
DOSBox Emulator,dosbox-jz_dosbox-jz,,dosbox-snap
DRAKON,drakon_drakon,,drakon-snap
Duck Marines,duckmarines_duckmarines,,duckmarines-snap
Dwarf Fortress,dwarf-fortress_dwarf-fortress,,dwarf-fortress-snap
Bricks,explode-bricks_snap,,bricks-snap
HexGL,fcole90-hexgl-webapp_fcole90-hexgl-webapp,,hexgl-snap
FS-UAE Launcher,fsuae_launcher,,fsuae-snap
Recipes,gnome-recipes_gnome-recipes,,org.gnome.Recipes-snap
Hanoi Towers,hanoi-towers_HanoiTower,,hanoi-towers-snap
Hellosound,hellosound_hellosound,,hellosound-snap
HelloUnity,hello-unity_hello-unity,,hello-unity-snap
hexexplorer-snap,hexexplorer-snap_hexexplorer-snap,,hexexplorer-snap
Hiri,hiri_hiri,,hiri-snap
hswitch,hswitch_hswitch,,hswitch-snap
Instagraph,instagraph_instagraph,,instagraph-snap
Investement-Viewer,investment-viewer_investment-viewer,,investment-viewer-snap
IRCCloud,irccloud-desktop_irccloud-desktop,,irccloud-desktop-snap
jimbodicomviewer,jimbodicomviewer_jimbodicomviewer,,jimbo-snap
jTileDownloader,jtiledownloader_jtiledownloader,,jtiledownloader-snap
Kanagame,kanagame_kanagame,,kanagame-snap
Kihvim,kihvim_prat,,kihvim-snap
Kiosc Editor,kiosceditor_VisualProductionsKioscEditor,,kiosceditor-snap
Kiosc,kiosc_VisualProductionsKiosc,,kiosc-snap
Konstructs,konstructs-client_konstructs-client,,konstructs-client-snap
krop,krop_krop,,krop-snap
Ktube Media Downloader,ktube-media-downloader_ktube-media-downloader,,ktube-media-downloader-snap
LaidOut,laidout_laidout,,laidout-snap
Langly,langly_langly,,langly-snap
LanguageTool,languagetool_languagetool,,languagetool-snap
LBRY,lbry_lbry,,lbry-snap
Level9,level9_glklevel9,,level9-snap
Level9,level9_level9,,level9-snap
Lindacoin Wallet,lindacoin-wallet_lindacoin-wallet,,lindacoin-wallet1-snap
magnesium,magnesium_magnesium,,magnesium-snap
mkvinfo,matroska-tools_mkvinfo,,mkvinfo-snap
MKVToolNix GUI,matroska-tools_mkvtoolnix-gui,,matroska-tools-snap
MediaConch,mediaconch-gui_mediaconch-gui,,mediaconch-snap
mendiApp,mendiapp_mendiapp,,mendiapp-snap
Minecraft,minecraft-nsg_minecraft-nsg,,minecraft-nsg-snap
Minetest,minetest-luk3yx_minetest,,minetest-snap
MoonPlayer,moonplayer_moonplayer,,moonplayer-snap
Mountain Tapir Collage Maker,mountain-tapir_mountain-tapir,,mountain-tapir-snap
Mr. Rescue,mrrescue_mrrescue,,mrrescue-snap
namebench,namebench-snap_namebench-snap,,namebench-snap
nanowallet,nanowallet_nanowallet,,nanowallet-snap
Neuronify,neuronify_neuronify,,neuronify-snap
Neutron Wallet,neutroncoin-wallet_neutroncoin-wallet,,neutroncoin-wallet-snap
Neverbore Picross,neverbore_neverbore,,neverbore-snap
Nitrokey App,nitrokey-app_nitrokey-app,,nitrokey-app-snap
noson,noson_noson,,noson-snap
OpenMapper,openmapper-desktop_openmapper,,openmapper-snap
Calculator,orangecalc_orangecalc,,oc-snap
Oracle Data Modeler,osddm_datamodeler,,osddm-snap
PAC,pac-vs_pac,,pac-vs-snap
PencilSheep,pencilsheep_pencilsheep,,pencilsheep-snap
Pin-Town,pin-town_pin-town,,pin-town-snap
Planet Lander,planetlander_planetlander,,planetlander-snap
PockIt,pockit_pockit,,pockit-snap
Pubip IPv4,pubip_pubip_ipv4,,pubip-ipv4-snap
Pubip IPv6,pubip_pubip_ipv6,,pubip-ipv6-snap
PyCharm,pycharm-community_pycharm-community,,pycharm-snap
Checkers,qcheckers_qcheckers,,checkers-snap
QOwnNotes,qownnotes_QOwnNotes,,QOwnNotes-snap
QStamina,qstamina-snap_Qstamina,,qstamina-snap
Reversi,reversu_snap,,reversu-snap
rockscissorspaperlizardspock-snap,rockscissorspaperlizardspock-snap_rockscissorspaperlizardspock-snap,,rockscissorspaperlizardspock-snap
RokuGtk,rokugtk_rokugtk,,rokugtk-snap
RPG Dice Roller,rpgdiceroller_rpgdiceroller,,dice-snap
Rube Cube,rubecube_rubecube,,rubecube-snap
SafeX Wallet,safex-wallet_safex-wallet,,safex-wallet-snap
ScreenCloudPlayer,screencloudplayer_screencloudplayer,,screencloudplayer-snap
Sensor Monitor,sensors-unity_sensors-unity,,sensors-unity-snap
Siilihai,siilihai-client_siilihai-client,,siilihai-snap
Simplekey,simplekey_simplekey,,simplekey-snap
Skrifa Lite,skrifa-lite_skrifa-lite,,skrifa-lite-snap
Skrifa,skrifa_skrifa,,skrifa-snap
SmallTextPad,smalltextpad_smalltextpad,,smalltextpad-snap
Solitaire,solitaire_snap,,solitaire-snap
supercalc,supercalc-snap_Supercalc-Snap,,supercalc-snap
Sword,sword_sword,,sword-snap
Symmetry Group Madness,symgrpmad_symgrpmad,,symgrpmad-snap
Tea Time,teatime_teatime,,teatime-snap
Termius-App,termius-app_termius-app,,termius-app-snap
Tetris in Racket,tetris-in-racket_tetris-em-racket,,tetris-in-racket-snap
TheTravelingFox,the-traveling-fox_the-traveling-fox,,the-traveling-fox-snap
TruthTables,truthtables_truthtables,icon48x48.png,truthtables-snap
Twisty Puzzle,twistypuzzle_twistypuzzle,,twistypuzzle-snap
Ubuntu Social Kit,ubuntu-social-kit_ubuntu-social-kit,,ubuntu-social-kit-snap
Vestin,vestin_vestin,,vestin-snap
VLC media player,vlc_vlc,,vlc-snap
Volleyball 2D,volleyball2d_volleyball2d,,volleyball2d-snap
WallpaperDownloader,wallpaperdownloader_wallpaperdownloader,,wallpaperdownloader-snap
Wavebox,wavebox_wavebox,,wavebox-snap
XnView Sketch,xnsketch_xnsketch,,xnsketch-snap
yacas-gui,yacas_yacas-gui,yacas-gui.png,yacas-gui-snap
ZZT,zzt_zzt,,zzt-snap
решили проблему snap, но слишком грубо.
Все не известные мне и не прописанные в tofix2.csv snap .desktop окажутся без иконок.
Мне нужно применить скрипт Faking Canonical snap исключительно по списку известных мне .desktop snap - tofix-snap.csv:
atom_atom.desktop
vlc_vlc.desktop
gnome-recipes_gnome-recipes.desktop
the-traveling-fox_the-traveling-fox.desktop
discord_discord.desktop
wavebox_wavebox.desktop
hiri_hiri.desktop
animationmaker_animationmaker.desktop
atomify_atomify.desktop
b1freearchiver_b1.desktop
baugeschichte_baugeschichte.desktop
bitticker_bitticker.desktop
bayam_bayam.desktop
bucklespring_buckle.desktop
buka_buka.desktop
chronoburn_chronoburn.desktop
chinese-cal_chinese-calendar.desktop
cloudtag_cloudtag.desktop
codebreakers_codebreakers.desktop
cloudcompare_ccViewer.desktop
cloudcompare_cloudcompare.desktop
collision_collision.desktop
cubicsdr-casept_cubicsdr.desktop
cuety_Cuety.desktop
desktop-habitica_desktop-habitica.desktop
devrantron_devrantron.desktop
dosbox-jz_dosbox-jz.desktop
duckmarines_duckmarines.desktop
drakon_drakon.desktop
dwarf-fortress_dwarf-fortress.desktop
fcole90-hexgl-webapp_fcole90-hexgl-webapp.desktop
fsuae_launcher.desktop
hanoi-towers_HanoiTower.desktop
hello-unity_hello-unity.desktop
hellosound_hellosound.desktop
hexexplorer-snap_hexexplorer-snap.desktop
hswitch_hswitch.desktop
instagraph_instagraph.desktop
investment-viewer_investment-viewer.desktop
irccloud-desktop_irccloud-desktop.desktop
jtiledownloader_jtiledownloader.desktop
kanagame_kanagame.desktop
jimbodicomviewer_jimbodicomviewer.desktop
ktube-media-downloader_ktube-media-downloader.desktop
kiosceditor_VisualProductionsKioscEditor.desktop
kiosc_VisualProductionsKiosc.desktop
level9_glklevel9.desktop
level9_level9.desktop
laidout_laidout.desktop
langly_langly.desktop
lbry_lbry.desktop
lindacoin-wallet_lindacoin-wallet.desktop
kihvim_prat.desktop
languagetool_languagetool.desktop
magnesium_magnesium.desktop
mendiapp_mendiapp.desktop
matroska-tools_mkvinfo.desktop
matroska-tools_mkvtoolnix-gui.desktop
mediaconch-gui_mediaconch-gui.desktop
minetest-luk3yx_minetest.desktop
minecraft-nsg_minecraft-nsg.desktop
mountain-tapir_mountain-tapir.desktop
moonplayer_moonplayer.desktop
mrrescue_mrrescue.desktop
neutroncoin-wallet_neutroncoin-wallet.desktop
neverbore_neverbore.desktop
nanowallet_nanowallet.desktop
namebench-snap_namebench-snap.desktop
neuronify_neuronify.desktop
noson_noson.desktop
pycharm-community_pycharm-community.desktop
pubip_pubip_ipv4.desktop
pubip_pubip_ipv6.desktop
planetlander_planetlander.desktop
pencilsheep_pencilsheep.desktop
openmapper-desktop_openmapper.desktop
orangecalc_orangecalc.desktop
pockit_pockit.desktop
osddm_datamodeler.desktop
qcheckers_qcheckers.desktop
qownnotes_QOwnNotes.desktop
qstamina-snap_Qstamina.desktop
rokugtk_rokugtk.desktop
rockscissorspaperlizardspock-snap_rockscissorspaperlizardspock-snap.desktop
rpgdiceroller_rpgdiceroller.desktop
screencloudplayer_screencloudplayer.desktop
sensors-unity_sensors-unity.desktop
safex-wallet_safex-wallet.desktop
siilihai-client_siilihai-client.desktop
simplekey_simplekey.desktop
skrifa_skrifa.desktop
smalltextpad_smalltextpad.desktop
skrifa-lite_skrifa-lite.desktop
supercalc-snap_Supercalc-Snap.desktop
teatime_teatime.desktop
symgrpmad_symgrpmad.desktop
sword_sword.desktop
tetris-in-racket_tetris-em-racket.desktop
termius-app_termius-app.desktop
volleyball2d_volleyball2d.desktop
vestin_vestin.desktop
ubuntu-social-kit_ubuntu-social-kit.desktop
wallpaperdownloader_wallpaperdownloader.desktop
zzt_zzt.desktop
xnsketch_xnsketch.desktop
archaeopteryx_archaeopteryx.desktop
audovia_Audovia.desktop
balloon-pop_snap.desktop
bubble-pop_snap.desktop
connect4_snap.desktop
bussard_bussard.desktop
explode-bricks_snap.desktop
konstructs-client_konstructs-client.desktop
krop_krop.desktop
nitrokey-app_nitrokey-app.desktop
pin-town_pin-town.desktop
reversu_snap.desktop
rubecube_rubecube.desktop
solitaire_snap.desktop
twistypuzzle_twistypuzzle.desktop
yacas_yacas-gui.desktop
mimeinfo.cache
pac-vs_pac.desktop
Пусть все новые snap, остаются без изменений пока я не создам для них иконку и не внесу их в список tofix-snap.csv и в tofix2.csv
Тема иконок для теста Снежок -
https://yadi.sk/d/kVzafq1ptMV4R (Самая полная тема иконок программ для Linux какую я только знаю).
О snap. Snap от canonical очень сырой продукт. Команда snap find должна показать все доступные программы, и к сожалению этого не делает. Можно набрать её, глянуть на список, а потом для примера набрать это - snap find vlc
Результат налицо.
Это то что нашёл я (команда на массовую установку Snap, закачка 15 Гб и на диске нужно не менее 25 Гб свободного места):
sudo snap install ahorcado animationmaker brackets heroku go teleconsole hiri discord wavebox lxd rocketchat-server nextcloud arangodb3 askgod atomify avahi awsiot b1freearchiver baugeschichte bayam bcc bitticker blr-says bluez bucklespring buka cactpot-solver canonical-livepatch cashbox-nextcloud cassandra the-traveling-fox chinese-cal chronoburn ci-dice cloudcompare cloudtag codebreakers collision conn-check couchdb cpustat cuberite cubicsdr-casept cuety currate dark-knight dash-shell desktop-habitica devrantron dnsmasqd docker doctl dosbox-jz dragonboard drakon duckmarines dwarf-fortress ejabberd fcole90-hexgl-webapp frr fsuae glances gnome-3-24 gnuchess go14-lbo go-example-webserver gogs hanoi hanoi-towers hello-unity hello-world hellosound hexexplorer-snap hexpad home-assistant-escoand hswitch hugo i2pd instagraph investment-viewer iota-mwc17 irccloud-desktop jenkins jimbodicomviewer jtiledownloader juego-elecciones justsurfinthenet kanagame kde-frameworks-5 kihvim kiosc kiosceditor laidout langly languagetool lbry level9 lindacoin-wallet littlewatcher livetuner locationd lonewolf lxd magic-device-tool magnesium matroska-tools mediaconch-gui mendiapp meta-maas metatron minecraft-nsg minetest-luk3yx moonplayer mountain-tapir mqttsrv mrrescue namebench-snap nanowallet nats-server neuronify neutroncoin-wallet neverbore noson numnom ogre ohmygiraffe omegat-cat onos open-solitaire-classic openhab openmapper-desktop openmvg orangecalc osddm packageproxy packer pencilsheep planetlander pocketmine-server-manager pockit podpublish pubip qcheckers qimo-wallpapers qownnotes qstamina-snap quagga rockscissorspaperlizardspock-snap rokugtk rokuterm rpgdiceroller safex-wallet sassc screencloudplayer sdlvnc sensors-unity sensortag sentry shadowsocks siilihai-client simplekey skrifa skrifa-lite smalltextpad snapweb snow-on-me soracom spreedme ss-qt stonscipap-snap storjshare stress-ng supercalc-snap surl sword symgrpmad teatime telegram-cli termius-app terraform-abacao test-snapd-tools tetris-in-racket tidec tinyproxy-snap tmx tof-casept torgo tpad ttimer ubuntu-calculator-app ubuntu-clock-app ubuntu-social-kit upnp-server vestin vitetris volleyball2d wallpaperdownloader wavebox webdm wekan wireless-tools wuziqi x86rdrand-benchmark xkcd-webserver xnsketch zeronet zile-tealeg zzt audovia archaeopteryx balloon-pop beagleblack bubble-pop bussard connect4 convos emoj explode-bricks gnss-sdr-next hello-node-snap http induscover javagame konstructs-client krop lci moon-buggy nitrokey-app nikola openstack-cli packer-abacao pi2 pin-town quagga-lool reversu rubecube serial-vault snappy-debug solitaire store-test-ubuntu-desktop thinger-maker-server truthtables uappexplorer-cli twistypuzzle yd john-the-ripper predix-ts-sample pac-vs yacas hello-railarem
Если застрянет, значит помер один снапов, можно ставить десятками пока не найдёте на чём застревает.
Snap с особым параметром:
sudo snap install anbox-installer --classic
sudo snap install aws-cli --classic
sudo snap install bower --classic
sudo snap install canonical-doc-utils --classic
sudo snap install fades --classic
sudo snap install jq-cprov --classic
sudo snap install juju-act --classic
sudo snap install ktube-media-downloader --classic
sudo snap install pycharm-community --classic
sudo snap install python0 --classic
sudo snap install ubuntu-make --classic
sudo snap install hollywood --classic
sudo snap install wal-e --classic
Snap после установки подключается как тип squashfs в /dev/loop0,1,2 и т.д.