Пик содержимого папки релейтед, смотрю с винды, так как пк с Ubuntu нет с собой.
Прежде всего не могу не предупредить: скачивание программ из "непойми откуда" влечет за собой вполне понятный
риск - Вы по сути сами у себя планируете запустить неизвестно чей код, и кто там чего запрограммировал - одному этому субъекту и известно. Если Вы источнику доверяете, то тогда продолжим...
на Вашем "Пике" видно в корневом каталоге архива файл
natives_blob.bin. По логике вещей - это и есть исполняемый файл, который Вам следует запустить. Ваши действия в данном случае:
1. Проверка работы программы В Ubuntu распаковать архив с программой себе в отдельную папку. Копируете архив себе в HOME/юзернейм/, кликаете в Nautilus ПКМ по нему, выбираете "Извлечь", видите что появилась новая папка (допустим, зовется она "Proga", таким образом теперь имеем путь
/home/юзернейм/Proga). Проваливаемся в нее, видим файл natives_blob.bin, ПКМ по нему, идем на вкладку "Права", убеждаемся что стоит галочка "Разрешить выполнение файла как программы". Далее окно свойств закрываем, выполняем двойной клик по этому
natives_blob.bin и смотрим что происходит.
Если ничего не произошло, или Вы не уверены что произошло, - возможно приложение какое-то особенное, и запуск его возможен только с терминала. Либо с зависимостями проблема - опять же лучше посмотреть выхлоп терминала на предмет того, на что он будет ругаться. ПКМ по свободному месту в этой же папке, выбираем пункт меню "Открыть в терминале", видим что открылся терминал, в котором строка приветствия выглядит не "пользователь@машина:~$ " а "пользователь@машина:~/Полный/путь/к/папке$". Вводим в терминал команду ./natives_blob.bin
Учитываем при вводе следующее: фрагмент "./" обязателен - он указывает что надо искать файл в текущем для терминала каталоге; natives_blob.bin - имя нашего исполняемого файла, его вводим с учетом регистра (т.е. где заглавные буквы - там заглавные, где строчные - там строчные). Нажимаем Enter. Смотрим на результат, что пишет терминал. Может ругнуться на зависимости, может ругнуться на то, что прав нет, на то, что файлы какие не найдены - далее думаем/читаем/гуглим что с ошибкой делать, словом: включаем голову (обязательно читаем прилагаемый к программе файл readme если он в наличии).
Если произошло ровно то, чего мы ожидали (видим окошко программы, она работает, словом -
#хочусебетакое), то либо так и запускаем, и пользуемся прямо отсюда (что не есть хорошо, т.к. ну не место программам в
/home), либо идем дальше.
2. Укоренение программы в системе Есть замечательный системный каталог. Называется
/opt Там по идее - самое место всякому такому софту, распространяемому в виде готовой сборки, но почему-то архивом, который приходится где-то качать. Наша программа, напомню, лежит на момент в директории
/home/юзернейм/Proga. Выполним копирование нашей программы из исходной папки в эту. Открываем терминал (ctrl+alt+t), вводим следующую команду:
sudo cp -r /home/юзернейм/Proga /opt
В результате после ввода пароля суперпользователя (который не отображается при вводе - это нормально!) копия нашей папки
/home/юзернейм/Proga попадет в каталог
/opt, таким образом имеем путь
/opt/Proga. Теперь проверим работоспособность этой проги. Выполняем в терминале команды
cd /opt/Proga
./natives_blob.bin
Должна либо запуститься программа, либо может пойти ругань на что-то...
Если второй случай - я бы начал с раздачи прав себе-любимому на данную директорию и все что под ней, и перепроверил бы: заработает ли. Права раздать текущему пользователю можно так:
a=$(whoami); sudo chown -R "$a:$a" /opt/Proga
если и после этого остаются ошибки - гуглим/читаем/думаем[/спрашиваем], если же после этого прога запустилась и работает - не за что
Теперь следует выполнить линковку нашей программы с системным каталогом /bin, где хранятся исполняемые файлы, и где первым делом рыскает система, когда пользователь командует ей на запуск бинарника без указания пути к нему. Тут все просто: вводим в терминале команду
sudo ln -s /opt/Proga/natives_blob.bin /usr/local/bin/natives_blob
После этого действия, где бы Вы ни запустили терминал, если начать вводить
native
и после
нажать клавишу <Tab>, - терминал сам волшебным образом допишет до
natives_blob вводимую Вами команду, и замрет в ожидании команды, приветливо моргая квадратным курсором. Если команду запустить (прямо так, без указания пути - стартует тот самый бинарник, котортый лежит в
/opt/Proga. Таким образом - мы создали символьную ссылку на исполняемый файл и поместили ее в директорию
/usr/local/bin/, обозвав
natives_blob (имя можно было дать любое, - только пробелы не желательны).
Кстати сказать: если до сих пор все идет как надо, на этом этапе
/home/юзернейм/Proga вместе с содержимым можно удалить.
3. Создание ярлыка для программы Раз уж все досюда работает нормально, то не худо бы и ярлычок сделать какой-нибудь... Первым делом ищем в папке с программой изображение, которое мы хотим использовать в качестве ярлыка. Оно есть? Допустим, есть. И зовется он
/opt/Proga/icon.pngГуглим соответствующее изображение, или рисуем его сами. Типовые требования: размер должен быть PNG, размер его 256х256 пикселей (можно в разумных пределах (512х512, например) больше, но обязательно квадратное!), фон желательно прозрачный, внешний вид - желательно чтоб нравился. Сохраняем изображение к себе на диск, допустим, в
$HOME/Downloads, переименовываем его там в
icon.png, далее при помощи терминала копируем его в ту же папку, где у нас сама программа:
sudo cp $HOME/Downloads/icon.png /opt/Proga/
Открываем окно терминала, вводим в него код
gedit $HOME/.local/share/applications/natives_blob.desktop
После нажатия на Enter появится окно текстового редактора gedit, в котором открыт текстовый файл
$HOME/.local/share/applications/natives_blob.desktop. На данный момент он пуст (если это не так - закрываем окно, и меняем имя файла, - не надо портить существующие ярлыки в системе...). Вбиваем в него такой код:
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
#если приложение консольное, и для запуска нужно оконо терминала, здесь следует выставить true:
Terminal=false
#абсолютный путь к иконке в системе
Icon=/opt/Proga/icon.png
Name=natives_blob
#здесь сама команда. В рассматриваемом примере, если не делали линкование - указываем полный путь к бинарнику, т.е. /opt/Proga/natives_blob.bin
Exec=natives_blob
#отображаемое примечание во всплывающей подсказке
Comment[ru]=Крутая прога, которую я поставил[а] сам[а]
Name[ru]=Наша прога
Сохраняем файл, закрываем окно gedit. Для того, чтобы дать ярлыку права на исполнение, в том же терминале вводим команду
chmod +x $HOME/.local/share/applications/natives_blob.desktop
Вводим пароль суперпользователя. Далее вводим команду
nautilus $HOME/.local/share/applications
Откроется окно файлового менеджера nautilus. Если все сделано корректно, - Вы увидите свой ярлык "Наша прога", который имеет ту самую иконку. Двойной клик по нему приведет к запуску соответствующей программы. Зачем сохраняли именно сюда? Да просто теперь система сама будет подтягивать эту иконку в меню системных приложений. Например, нажмите Alt+F2 и начните вводить "Наша прога". Эффект понятен? )) На этом все. Программа установлена, на нее созданы необходимые ссылки, она работает и она у Вас на диске.
Как-то так, в общих чертах...
- Пик - картинка, скриншот. По-видимому, от англ. picture. Автор темы давал ссылку на скриншот, - она и подразумевается.
- ПКМ - щелчок правой клавишей мыши. Как правило, вызывает контекстное меню.
юзернейм - везде по тексту имя текущего пользователя. В вашем случае, %username%, - результат выполнения в терминале команды whoami. - бинарник - в общем случае, скомпилированный исполняемый файл, т.е. программа. Обзываю так, поскольку это не простой файл - это бинарный (двоичный) код, который понимать способны только сама система, и программисты на assembler (к коим, раз уж Вам этот термин не понятнен, Вы точно на данный момент не относитесь).
- $HOME По тексту несколько раз упоминалось $HOME. Это - переменная окружения, которая хранит в себе адрес домашнего каталога текущего пользователя. Чтобы понять что это такое, просто введите в терминале echo $HOME и нажмите <Enter>. Терминал Вам напишет Вашу домашнюю папку.