diff --git a/programs/x86_64-apps b/programs/x86_64-apps index 46c7b38e4..f091e93fe 100644 --- a/programs/x86_64-apps +++ b/programs/x86_64-apps @@ -4,6 +4,7 @@ ◆ 432hz-player : Because most music is recorded in 440hz, Audio Player. ◆ 7zip : 7-Zip is a file archiver with a high compression ratio. ◆ 86box : Emulator of x86-based machines based on PCem. +◆ 9launcher : An actively maintained and cross platform remake of Touhou Relauncher. ◆ aaaaxy : A nonlinear puzzle platformer, game. ◆ abiword : Unofficial. A light and free word processing software. ◆ accessimap-lecteur-der : Accessimap Lecteur DER. @@ -130,6 +131,7 @@ ◆ badlion : Most Complete All-In-One Mod Library for Minecraft with 100+ Mods. ◆ baijimangaviewer : Manga viewer that uses Material Design. ◆ bambustudio : PC Software for BambuLab's 3D printers. +◆ banban : A productivity app inspired by GitHub Projects Kanban. ◆ baobab-gtk3 : Unofficial. Disk Usage Analyser, version 3.38, for all GNOME4+ haters. ◆ barnacal : A simple menu bar app for viewing a calendar ◆ bastyon : Decentralized social network based on the blockchain. @@ -155,6 +157,7 @@ ◆ beyond-all-reason : 3D Real-Time Strategy Total Annihilation Inspired, game. ◆ bezique : Plays bezique game against the AI. ◆ bforartists : 3D modeling, animation, rendering and post-production. +◆ bidirectional : Write Arabic text on apps that don't support the bidirectional text. ◆ bilibili : Bilibili official desktop client. ◆ bilibilivideodownload : Bilibili video downloader. ◆ biliup-app : Bilibili uploader. @@ -173,6 +176,7 @@ ◆ bk : Terminal Epub reader. ◆ black-chocobo : FF7 Save Game Editor. ◆ blacknut : Cloud gaming client. +◆ blank : Blank is a minimalist, opinionated markdown editor made for writing. ◆ blastem : Clone of Mercurial Repo. ◆ blender-alpha : Very fast and versatile 3D modeller/renderer, Alpha. ◆ blender-beta : Very fast and versatile 3D modeller/renderer, Beta. @@ -252,6 +256,7 @@ ◆ candycrisis : Candy Crisis source port for modern operating systems. ◆ capbattleship : Battleship game with a pirate theme. ◆ caprine : Unofficial, elegant privacy focused Facebook Messenger app. +◆ cardo : Podcast client. ◆ cargo : Converts your crate into an AppImage. ◆ carnet : A complete and rich note taking app with sync capabilities. ◆ carpenters : Digital preservation ingest utility. @@ -260,6 +265,7 @@ ◆ casterr : Screen recorder, easing recording and clipping in-game. ◆ castersoundboard : Soundboard for hot-keying and playing back sounds. ◆ catalyst : Catalyst web browser. +◆ catapult : A cross-platform launcher for Cataclysm DDA and BN. ◆ catcher : Peer-testing of software projects. ◆ cate-desktop : GUI for the ESA CCI Toolbox, Cate. ◆ cavoke : Cavoke: Platform to create/host multiplayer turn-based board games. @@ -414,6 +420,7 @@ ◆ dataset-annotator : An annotation tool for a dataset. ◆ datcord : Discord client. ◆ dawnlightsearch : A Linux version of Everything Search Engine. +◆ dbeaver-ce : Unofficial, DBeaver Community is a free cross-platform database tool for developers, database administrators, analysts, and everyone working with data. ◆ dbee : Fast & Minimalistic Database Browser. ◆ dbet-wallet : DBET Wallet. ◆ dbgate : Opensource database administration tool @@ -440,10 +447,12 @@ ◆ deployer : Deploy your applications through Jenkins. ◆ deskreen : Turns any device with a web browser into a secondary screen. ◆ destiny : Cross-platform Magic Wormhole graphical client. +◆ devclean : A CLI and Desktop GUI app to clean dev dependencies (node_modules, cache) and more. ◆ devdocs-desktop : Desktop client for devdocs.io. ◆ devhub : TweetDeck for GitHub ◆ devilutionx : Diablo build for modern operating systems. ◆ devsidecar : Dev sidecar/github/git/stackoverflow acceleration, in chinese. +◆ devtools-x : Collection of offline first developer utilities available as desktop application. ◆ dexter-dev-env : Dexter Development Environment. ◆ dezor : The web browser including VPN and Adblocker. ◆ dfdemo : A thin Tcl/Tk GUI around the df POSIX command. @@ -477,6 +486,7 @@ ◆ droppoint : Drag content without having to open side-by-side windows. ◆ dtmate : CLI to compute difference between date, time or duration. ◆ dua : View disk space usage and delete unwanted data, fast. +◆ duckling : A fast viewer for CSV/Parquet files and databases such as DuckDB, SQLite, PostgreSQL, MySQL, Clickhouse, etc. ◆ duckstation : PlayStation 1, aka PSX games Emulator. ◆ duelyst : A digital collectible card game and turn-based strategy hybrid. ◆ duf : Disk Usage/Free Utility, a better 'df' alternative. @@ -494,6 +504,7 @@ ◆ ecency-surfer : Rewarding communities built, owned and operated by its users. ◆ ecode : Lightweight code editor designed for modern hardware. ◆ edex-ui : A cross-platform, customizable science fiction terminal emulator. +◆ eget : Easily install prebuilt binaries from GitHub. ◆ ehdev-shell : An electron based developing tool for feds. ◆ eka2l1 : A Symbian OS/N-Gage emulator ◆ eksplode.re : Bomberman game made with Godot under BSD3. @@ -576,6 +587,7 @@ ◆ extremetuxracer : Unofficial. 3D racing game with Tux, the Linux penguin. ◆ eyestalker : Video-based eye tracking using recursive estimation of pupil. ◆ eza : A modern, maintained replacement for ls. +◆ ezup : Easy File Upload to Cloud Storage. ◆ f1mv-lights-integration : Connect your smart home lights to MultiViewer. ◆ fairshare : Simplifying the curation and sharing of biomedical research. ◆ fantasia-archive : A database manager for world building. @@ -600,6 +612,7 @@ ◆ fetchit : A system fetch tool for Linux, written in Rust. ◆ fflogs-uploader : FFLogs Uploader appimage. ◆ ff-password-exporter : Export your saved passwords from Firefox. +◆ ffvim : FIVIM is an editor for encrypted notes and files. ◆ ffwa-facebook : WebApp & Firefox Profile for Facebook. ◆ ffwa-github : WebApp & Firefox Profile for GitHub. ◆ ffwa-gmail : WebApp & Firefox Profile for Gmail. @@ -649,6 +662,7 @@ ◆ floorp : Floorp Browser, the most Advanced and Fastest Firefox derivative. ◆ fluent-reader : Modern desktop RSS reader. ◆ flycast : A Sega Dreamcast, Naomi, Naomi 2 and Atomiswave emulator. +◆ flyingcarpet : Cross-platform AirDrop. File transfer between Android, iOS, Linux, macOS, and Windows over ad hoc WiFi. No network infrastructure required, just two devices with WiFi chips in close range. ◆ fmradio : Cross platform FM Radio App for RTL2832U dongles. ◆ fms-file-explorer : Access and exploration of data produced. ◆ focalizzare : A Timer for Pomodoro Technique. @@ -729,6 +743,7 @@ ◆ gitify : GitHub notifications on your menu bar. ◆ gitjournal : Mobile first Note Taking integrated with Git. ◆ gitkraken : GitKraken Client including an intuitive GUI & powerful CLI. +◆ gitlight : GitHub & GitLab notifications on your desktop. ◆ gitnote : A modern note taking app based on GIT. ◆ gitqlient : Multi-platform Git client written with Qt. ◆ glabels : Create labels, business cards and media covers. @@ -758,6 +773,7 @@ ◆ google-chrome : Unofficial, Web Browser, Stable version. ◆ google-docs : Unofficial, Google Docs Desktop App made with electron. ◆ google-tasks-desktop : Unofficial Google Tasks Desktop Client. +◆ google-task-tauri : An Unofficial Desktop Client for Google Tasks. ◆ gopeed : A modern download manager that supports all platforms. ◆ gospel : Poppler based fast pdf viewer written in PyQt5. ◆ goto : A simple terminal SSH manager that lists favorite SSH servers. @@ -912,6 +928,7 @@ ◆ join-desktop : A companion app for the Join website. ◆ joplin-beta : A cross-platform note taking and to-do app. ◆ joplin : Note and to-do application with synchronization capabilities. +◆ journalv : Journaling app for your days and dreams. ◆ joy2droidx : Turn Android phones into virtual Xbox 360 controller. ◆ jq : Command-line JSON processor. ◆ jqp : A TUI playground to experiment with jq. @@ -924,6 +941,7 @@ ◆ jumpfm : A file manager that lets you jump. ◆ junest : Arch Linux based distro that runs rootless on any other Linux distro. ◆ kade : A desktop application for Q Methodology. +◆ kadium : App for staying ontop of YouTube channels' uploads. ◆ kage : GUI for Metasploit Meterpreter and Session Handler. ◆ kaidan : A QtQuick Jabber client. ◆ kajongg : Unofficial, An ancient Chinese board game for 4 players. This script installs the full "kdegames" suite. @@ -1103,6 +1121,7 @@ ◆ lux : A free open source image and panorama viewer. ◆ lx-music-desktop : 一个基于electron的音乐软件. ◆ lxtask : A lightweight and desktop-independent task manager. +◆ lyricistant : A helpful writing assistant for lyricists. ◆ macchina : A system information frontend with an emphasis on performance. ◆ magento2-upgrade-gui : Magento 2 Upgrade GUI. ◆ magicfountain : A novel and screenwriting program. @@ -1119,6 +1138,7 @@ ◆ mapeo : Local-first mapping and monitoring in remote environments. ◆ mapollage : Photo kml generator for Google Earth. ◆ mapton : Some kind of map application. +◆ markflowy : Modern markdown editor application, Build fast and efficient workflows. ◆ markman : A markdown editor. ◆ mark-mind : Multiplatform mind map and outliner editor with markdown support. ◆ marktext : A simple and elegant markdown editor multiplatform. @@ -1135,11 +1155,13 @@ ◆ mcpodcast : Electron app for tasks around Podcast mp3 files. ◆ m : Data oriented programming language for game developers. ◆ mdl : MDL wallet. +◆ mdsilo-app : Lightweight Knowledge Base and Feed Reader. ◆ mdview : Application that renders and displays Markdown files. ◆ mdx : CLI program for downloading manga from the MangaDex website. ◆ measur : Energy efficiency calculation app for use with industrial equipment. ◆ mechvibes : Play mechanical keyboard sounds as you type. ◆ mediachips : Manage your videos, add any metadata to them and play them. +◆ media-downloader : Cross-platform audio/video downloader. ◆ media-dupes : Content duplicator for common media services like YouTube. ◆ mediaelch : Media Manager for Kodi. ◆ mediainfo : Supplies technical & tag information about a video or audio file. @@ -1297,6 +1319,7 @@ ◆ nostlan : A multiplatform game launcher for video game emulators. ◆ notable : The Markdown-based note-taking app that doesn't suck. ◆ nota-maui : Text editor with tab support, syntax highlight and more. +◆ notedown : Note taking with react + rust. For windows, mac and linux. ◆ notekit : A GTK3 hierarchical markdown notetaking app with tablet support. ◆ notemaster : Note-taking app to help boost productivity. ◆ notepadnext : A cross-platform, reimplementation of Notepad++. @@ -1323,6 +1346,7 @@ ◆ nychess : A python Chess Engine and AI. ◆ nym-wallet : Use the Nym network and take advantage of it. ◆ nyrna : Suspend games and applications. +◆ obliqoro : A cross-platform tauri gui where Oblique Strategies meets Pomodoro. ◆ obsidian : A powerful knowledge base, plain text Markdown files. ◆ obs-studio : Unofficial. Software for video recording and live streaming. ◆ ocat : OpenCore Auxiliary Tools, editing config.plist files for Acidanthera. @@ -1376,6 +1400,7 @@ ◆ opera-beta : Unofficial. Fast and secure web browser, Beta version. ◆ opera-dev : Unofficial. Fast and secure web browser, Developer version. ◆ opera : Unofficial. Fast and secure web browser, Stable version. +◆ orange : Cross-platform local file search engine. ◆ orcaslicer-any : G-code generator for 3D printers, the most recent release. ◆ orcaslicer-beta : G-code generator for 3D printers, Beta release. ◆ orcaslicer : G-code generator for 3D printers, Stable release. @@ -1392,6 +1417,7 @@ ◆ overte : Overte open source virtual worlds platform. ◆ ovideo : Video Editor. ◆ owallet : A comprehensive Ontology desktop wallet. +◆ ow-mod-man : The mod manager for the Outer Wilds Mod Loader. ◆ owncloud : The most essential productivity tool since email. ◆ oxen-gui-wallet : Oxen electron GUI wallet. ◆ p2p-chat : P2P LAN chatting and file sharing tool. @@ -1409,6 +1435,7 @@ ◆ paper : A CLI Tool to set a random wallpaper from Unsplash.com. ◆ papercraft : A tool to unwrap 3D models. ◆ parallelcoin : Parallelcoin qt wallet appimage binary. +◆ parchment : A minimal minimal text editor written using web technologies. ◆ parity-fether : Fether Wallet. ◆ parsec-linux : Parsec game streaming client. ◆ parsec : Open source Dropbox-like file sharing with full client encryption. @@ -1418,6 +1445,7 @@ ◆ patchwork : Messaging and sharing app built on top of Secure Scuttlebutt. ◆ pathephone : Distributed audio player. ◆ patternpaint : Making beautiful light shows is as easy as drawing a picture. +◆ pavo : A mini desktop wallpaper application. ◆ pavucontrol-qt : Qt port of pavucontrol Pulseaudio mixer, unofficial AppImage. ◆ pb-for-desktop : Pushbullet Desktop app. ◆ pboy : A small .pdf management tool with a command-line UI. @@ -1494,6 +1522,7 @@ ◆ podman-desktop-companion : Podman command line interface. ◆ podman : Free & open source tool to manage containers, pods, and images. ◆ poe-ladder : Path of Exile ladder viewer. +◆ pointless : An endless drawing canvas desktop app made with Tauri (Rust) and React. ◆ poi : Scalable KanColle browser and tool. ◆ pokete : A terminal based Pokemon like game. ◆ polar-bookshelf : Personal knowledge repository for PDF and web content. @@ -1511,6 +1540,7 @@ ◆ postybirb : Multimedia crossposter for multimedia websites. ◆ postybirb-plus : Helps artists post art to multiple websites more quickly. ◆ potatopresenter : Create presentation slides and exported as PDF. +◆ pot-desktop : A cross-platform software for text translation and recognition. ◆ powder-toy : AppImage build of The Powder Toy built from source. ◆ powerliminals-player : Powerliminal audios in the background, Audio player. ◆ powershell : Microsoft PowerShell. @@ -1638,11 +1668,13 @@ ◆ realm-studio : A tool for everything Realm. ◆ recoll : Full-text search for your desktop. ◆ record-compare : Record Compare. +◆ recordscript : Cross-platform screen recorder, transcript, subtitle. ◆ redeclipse : A great first person 3D arena shooter with online support, game. ◆ redis-gui : Modern graphical user interface to peek into redis DB. ◆ redis-viewer : A Redis visualization client tool. ◆ redminetimetracker : Time Tracking tool for Redmine. ◆ reliefvalve : Helps manage the Steam client application. +◆ remind-me-again : Toggleable cron reminders app. ◆ remnote : Build your Knowledge Base anywhere and without distractions. ◆ rendertune : Electron app that uses ffmpeg to combine audio.+image files into video files. ◆ reor : AI note-taking app that runs models locally. @@ -1711,6 +1743,7 @@ ◆ scrum-retroboard : Electron application based on React. ◆ scytale : Scytale Desktop Client for Linux. ◆ sd : Intuitive find & replace CLI, sed alternative. +◆ seismic : A taskbar app for displaying USGS magnitude 2.5+ earthquakes from the past day. ◆ selenium-ide : Open Source record and playback test automation for the web. ◆ sengi : A multi-account desktop client for Mastodon and Pleroma. ◆ sentinel : An open-source decentralized VPN network application. @@ -1792,6 +1825,7 @@ ◆ soft-serve : The mighty, self-hostable Git server for the command line. ◆ software-challenge-gui : GUI für die Software-Challenge. ◆ soil-editor : A tool to edit the soil properties, CRITERIA1D. +◆ solars : Visualize the planets of our solar system. ◆ solarwallet : Stellar wallet. Secure and user-friendly. ◆ soniclineup : Comparative visualisation of multiple audio files. ◆ sonicvisualiser : Viewing and analysing the contents of music audio files. @@ -1813,6 +1847,7 @@ ◆ speed-dreams : A Torcs fork, 3d motorsport simulation and race cars game. ◆ speedyloader : Speeduino universal firmware loader. ◆ speek : Privacy focused messenger. +◆ spicy-launcher : Cross-platform launcher for Spicy Lobster games. ◆ spiritfarer : Spiritfarer, AppImage version. ◆ spivak : Karaoke player based on GStreamer and Qt5. ◆ spm : A simple CLI package manager written in bash mainly for AppImages. @@ -1822,7 +1857,9 @@ ◆ spotube : Open source Spotify client that doesn't require Premium. ◆ spritemate4electron : A simple Electron-wrapper for Esshahn's awesome Spritemate-webapp. ◆ sptlrx : Synchronized lyrics in your terminal. +◆ spyglass : A personal search engine to create a searchable library from your personal documents, interests, and more. ◆ sqlitebrowser : DB Browser is a light GUI editor for SQLite databases. +◆ squirrel-disk : Cross-Platform and Super Fast Disk Usage Analysis Tool. ◆ squirreldisk : Cross-Platform and Super Fast Disk Usage Analysis Tool in Rust. ◆ srb2k : AppImage Package for Sonic Robo Blast 2 Kart, game. ◆ ssh-mitm : Server for security audits supporting public key authentication. @@ -1861,6 +1898,7 @@ ◆ strike-maui : Simple convergent IDE. ◆ strongbox : A World of Warcraft Addon Manager aimed at Linux players. ◆ structure : A knowledge management tool. +◆ studymd : Flashcards from Markdown. ◆ stunt-car-remake : Remake of the old game Stunt Car Racer. ◆ subillmanager : A simple Flutter app to manage electricity bill. ◆ substrate-ide : Graphic IDE for developing Substrate blockchains. @@ -1872,6 +1910,7 @@ ◆ summoners.war.exporter : To parse intercepted data from Summoners War. ◆ sumoco : Simple Unified Model for Orthopaedics. ◆ sunamu : Show your currently playing song in a stylish way. +◆ sunny : Screenshot software that supports OCR and image translation features. ◆ sunsama : The daily planner for elite professionals. ◆ sunshine : Sunshine is a Gamestream host for Moonlight. ◆ sup : A Slack client with WhatsApp like UI. @@ -1897,6 +1936,7 @@ ◆ swiftnessx : Electron application boilerplate based on React/Webpack. ◆ swifty : Free Offline-first Password Manager for MacOS, Windows and Linux. ◆ switchhosts : Switch hosts quickly! +◆ switchshuttle : Run predefined commands in various terminal applications. ◆ swradio : Shortwave receiver for use with sdrplay/hackrf/dabsticks/pmsdr. ◆ symphonium : A tool to help when learning to play the piano. ◆ syncmyl2p : L2P synchronisation tool. @@ -1973,6 +2013,7 @@ ◆ todoist : Todoist for linux. ◆ todorant : Todorant releases. ◆ todorust : Simple ToDoList made in rust. +◆ toerings : A clone of Conky Seamod using Tauri. ◆ toipe : yet another typing test, but crab flavoured. ◆ tomatox : An online free VIP video analysis player, in chinese. ◆ tonuino-toolbox : SD card manager for your Tonuino. @@ -1989,6 +2030,7 @@ ◆ transmission-gtk : Unofficial. Fast, easy, and free BitTorrent client, GTK+ GUI. ◆ transmissionic : Remote for Transmission Daemon. ◆ trezor-suite : Trezor Suite desktop application. +◆ trgui-ng : Remote GUI for Transmission torrent daemon. ◆ triagem-touch : Novo SGA triage client. ◆ trinity-desktop : Desktop wallet for IOTA. ◆ tropy : Research photo management. @@ -2016,6 +2058,7 @@ ◆ typioca : Cozy typing speed tester in terminal. ◆ tzared : Real-time strategy game. ◆ uad-ng : GUI Rust wrapper for ADB to debloat non-rooted Android devices. +◆ ubiquity : A cross-platform markdown editor. ◆ ubports-installer : A simple tool to install Ubuntu Touch on UBports devices ◆ uhk.agent : Configuration app of the Ultimate Hacking Keyboard. ◆ uivonim : Fork of the Veonim Neovim GUI. @@ -2135,6 +2178,7 @@ ◆ whiteboard : Activity-based slideshow for coding webinars and presentations. ◆ whu-library-seat : Wuhan University Library Assistant, for Jinan University. ◆ widelands : Real-time strategy game with singleplayer campaigns. +◆ window-pet : Pet overlay app that lets you have adorable companion such as pets, anime characters on your screen. ◆ windows2usb : Flash Drive burning utility, MBR/GPT, BIOS/UEFI, FAT32/NTFS. ◆ windows95 : Unofficial. Windows 95 in Electron. Runs on macOS, Linux, and Windows. ◆ wine32-deploy : Tool for creating AppImages for 32-bit Microsoft Windows apps. @@ -2175,6 +2219,7 @@ ◆ xdg-ninja : Script that checks your $HOME for unwanted files and directories. ◆ xelfviewer : A multiplatform ELF file viewer/editor. ◆ xemu : Original Xbox Emulator for Windows, macOS, and Linux. +◆ xgetter : Download video on Youtube, Facebook, X(Twitter), Instagram, Tiktok, Bilibili, Douyin and more. ◆ xl-converter : Powerful image converter with support for multithreading. ◆ xlights : A sequencer for Lights and sequences manager. ◆ x-loc : Extra localizations/translations manager for Stardew Valley. @@ -2202,12 +2247,14 @@ ◆ yesplaymusic : A third party music player for Netease Music. ◆ ym-desktop : The YouTube music desktop app. ◆ youtube-downloader : Download video/audio from youtube (and instagram) videos. +◆ youtube-download : GUI and CLI for downloading YouTube video/audio. ◆ youtube-music : Unofficial. Amazing electron wrapper for YouTube Music featuring plugins. ◆ youtubesearchfilter : YouTube searches with/without a pre-filter from CLI. ◆ yt-dlandcut : Download and cut Youtube videos by providing url and time range. ◆ yt-dlg : A front-end GUI of the popular youtube-dl written in wxPython. ◆ yt-dlp : A feature-rich command-line audio/video downloader. ◆ ytdownloader : App for downloading Videos and Audios from hundreds of sites. +◆ ytmdesktop2 : Unofficial Youtube Music Desktop App, with LastFM support. ◆ ytmdesktop : A Desktop App for YouTube Music. ◆ yts-streaming : Stream or play yts and torrent movies. ◆ yubikey-manager : Configure your YubiKey over all USB transports. diff --git a/programs/x86_64/9launcher b/programs/x86_64/9launcher new file mode 100644 index 000000000..68f0ec2c3 --- /dev/null +++ b/programs/x86_64/9launcher @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=9launcher +SITE="wearrrrr/9Launcher" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/wearrrrr/9Launcher/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=9launcher +SITE="wearrrrr/9Launcher" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/wearrrrr/9Launcher/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/banban b/programs/x86_64/banban new file mode 100644 index 000000000..b3aa93c04 --- /dev/null +++ b/programs/x86_64/banban @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=banban +SITE="HubertK05/banban" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/HubertK05/banban/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=banban +SITE="HubertK05/banban" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/HubertK05/banban/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/bidirectional b/programs/x86_64/bidirectional new file mode 100644 index 000000000..a2da7ed75 --- /dev/null +++ b/programs/x86_64/bidirectional @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=bidirectional +SITE="samirdjelal/bidirectional" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/samirdjelal/bidirectional/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=bidirectional +SITE="samirdjelal/bidirectional" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/samirdjelal/bidirectional/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/blank b/programs/x86_64/blank new file mode 100644 index 000000000..3cb07e59d --- /dev/null +++ b/programs/x86_64/blank @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=blank +SITE="FPurchess/blank" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/FPurchess/blank/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=blank +SITE="FPurchess/blank" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/FPurchess/blank/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/cardo b/programs/x86_64/cardo new file mode 100644 index 000000000..9a06086fe --- /dev/null +++ b/programs/x86_64/cardo @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=cardo +SITE="n0vella/cardo" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/n0vella/cardo/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=cardo +SITE="n0vella/cardo" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/n0vella/cardo/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/catapult b/programs/x86_64/catapult new file mode 100644 index 000000000..6abb9875e --- /dev/null +++ b/programs/x86_64/catapult @@ -0,0 +1,68 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=catapult +SITE="qrrk/Catapult" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/qrrk/Catapult/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | grep -i "catapult-linux-x64-" | head -1) +wget "$version" || exit 1 +[ -e ./*7z ] && 7z x ./*7z && rm -f ./*7z +[ -e ./*tar.* ] && tar fx ./*tar.* && rm -f ./*tar.* +[ -e ./*zip ] && unzip -qq ./*zip 1>/dev/null && rm -f ./*zip +cd .. +if [ -d ./tmp/* 2>/dev/null ]; then mv ./tmp/*/* ./; else mv ./tmp/* ./"$APP" 2>/dev/null || mv ./tmp/* ./; fi +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./$APP || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=catapult +SITE="qrrk/Catapult" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/qrrk/Catapult/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | grep -i "catapult-linux-x64-" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + [ -e ./*7z ] && 7z x ./*7z && rm -f ./*7z + [ -e ./*tar.* ] && tar fx ./*tar.* && rm -f ./*tar.* + [ -e ./*zip ] && unzip -qq ./*zip 1>/dev/null && rm -f ./*zip + cd .. + if [ -d ./tmp/* 2>/dev/null ]; then mv --backup=t ./tmp/*/* ./; else mv --backup=t ./tmp/* ./"$APP" 2>/dev/null || mv --backup=t ./tmp/* ./; fi + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# ICON +mkdir -p icons +wget https://raw.githubusercontent.com/qrrk/Catapult/master/icons/appicon.svg -O ./icons/"$APP" 2> /dev/null + +# LAUNCHER +echo "[Desktop Entry] +Name=Catapult +Exec=$APP +Icon=/opt/$APP/icons/$APP +Type=Application +Terminal=false +Categories=Game;" > /usr/local/share/applications/"$APP"-AM.desktop diff --git a/programs/x86_64/devclean b/programs/x86_64/devclean new file mode 100644 index 000000000..71948548f --- /dev/null +++ b/programs/x86_64/devclean @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=devclean +SITE="HuakunShen/devclean" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/HuakunShen/devclean/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=devclean +SITE="HuakunShen/devclean" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/HuakunShen/devclean/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/devtools-x b/programs/x86_64/devtools-x new file mode 100644 index 000000000..d6952209e --- /dev/null +++ b/programs/x86_64/devtools-x @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=devtools-x +SITE="fosslife/devtools-x" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/fosslife/devtools-x/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=devtools-x +SITE="fosslife/devtools-x" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/fosslife/devtools-x/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/duckling b/programs/x86_64/duckling new file mode 100644 index 000000000..f97d3b212 --- /dev/null +++ b/programs/x86_64/duckling @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=duckling +SITE="l1xnan/duckling" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/l1xnan/duckling/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=duckling +SITE="l1xnan/duckling" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/l1xnan/duckling/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/eget b/programs/x86_64/eget new file mode 100644 index 000000000..16684d334 --- /dev/null +++ b/programs/x86_64/eget @@ -0,0 +1,55 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=eget +SITE="zyedidia/eget" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +#printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/zyedidia/eget/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | grep -i "linux_amd64.tar.gz" | head -1) +wget "$version" || exit 1 +[ -e ./*7z ] && 7z x ./*7z && rm -f ./*7z +[ -e ./*tar.* ] && tar fx ./*tar.* && rm -f ./*tar.* +[ -e ./*zip ] && unzip -qq ./*zip 1>/dev/null && rm -f ./*zip +cd .. +if [ -d ./tmp/* 2>/dev/null ]; then mv ./tmp/*/* ./; else mv ./tmp/* ./"$APP" 2>/dev/null || mv ./tmp/* ./; fi +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./$APP || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=eget +SITE="zyedidia/eget" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/zyedidia/eget/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | grep -i "linux_amd64.tar.gz" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + [ -e ./*7z ] && 7z x ./*7z && rm -f ./*7z + [ -e ./*tar.* ] && tar fx ./*tar.* && rm -f ./*tar.* + [ -e ./*zip ] && unzip -qq ./*zip 1>/dev/null && rm -f ./*zip + cd .. + if [ -d ./tmp/* 2>/dev/null ]; then mv --backup=t ./tmp/*/* ./; else mv --backup=t ./tmp/* ./"$APP" 2>/dev/null || mv --backup=t ./tmp/* ./; fi + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 diff --git a/programs/x86_64/ezup b/programs/x86_64/ezup new file mode 100644 index 000000000..bf55d13bc --- /dev/null +++ b/programs/x86_64/ezup @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=ezup +SITE="HuakunShen/EzUp" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/HuakunShen/EzUp/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=ezup +SITE="HuakunShen/EzUp" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/HuakunShen/EzUp/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/ffvim b/programs/x86_64/ffvim new file mode 100644 index 000000000..2229384c5 --- /dev/null +++ b/programs/x86_64/ffvim @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=ffvim +SITE="fivim/fivim" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/fivim/fivim/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=ffvim +SITE="fivim/fivim" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/fivim/fivim/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/flyingcarpet b/programs/x86_64/flyingcarpet new file mode 100644 index 000000000..226886782 --- /dev/null +++ b/programs/x86_64/flyingcarpet @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=flyingcarpet +SITE="spieglt/flyingcarpet" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/spieglt/flyingcarpet/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=flyingcarpet +SITE="spieglt/flyingcarpet" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/spieglt/flyingcarpet/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/gitlight b/programs/x86_64/gitlight new file mode 100644 index 000000000..723fb372c --- /dev/null +++ b/programs/x86_64/gitlight @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=gitlight +SITE="colinlienard/gitlight" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/colinlienard/gitlight/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=gitlight +SITE="colinlienard/gitlight" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/colinlienard/gitlight/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/google-task-tauri b/programs/x86_64/google-task-tauri new file mode 100644 index 000000000..dbf799c44 --- /dev/null +++ b/programs/x86_64/google-task-tauri @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=google-task-tauri +SITE="codad5/google-task-tauri" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/codad5/google-task-tauri/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=google-task-tauri +SITE="codad5/google-task-tauri" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/codad5/google-task-tauri/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/journalv b/programs/x86_64/journalv new file mode 100644 index 000000000..f5536c391 --- /dev/null +++ b/programs/x86_64/journalv @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=journalv +SITE="ahme-dev/journalv" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/ahme-dev/journalv/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=journalv +SITE="ahme-dev/journalv" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/ahme-dev/journalv/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/kadium b/programs/x86_64/kadium new file mode 100644 index 000000000..92ce46972 --- /dev/null +++ b/programs/x86_64/kadium @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=kadium +SITE="probablykasper/kadium" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/probablykasper/kadium/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=kadium +SITE="probablykasper/kadium" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/probablykasper/kadium/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/lyricistant b/programs/x86_64/lyricistant new file mode 100644 index 000000000..8198d2eb8 --- /dev/null +++ b/programs/x86_64/lyricistant @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=lyricistant +SITE="wardellbagby/lyricistant" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/wardellbagby/lyricistant/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=lyricistant +SITE="wardellbagby/lyricistant" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/wardellbagby/lyricistant/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/markflowy b/programs/x86_64/markflowy new file mode 100644 index 000000000..146262efb --- /dev/null +++ b/programs/x86_64/markflowy @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=markflowy +SITE="drl990114/MarkFlowy" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/drl990114/MarkFlowy/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=markflowy +SITE="drl990114/MarkFlowy" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/drl990114/MarkFlowy/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/mdsilo-app b/programs/x86_64/mdsilo-app new file mode 100644 index 000000000..e392f2bc8 --- /dev/null +++ b/programs/x86_64/mdsilo-app @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=mdsilo-app +SITE="mdSilo/mdSilo-app" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/mdSilo/mdSilo-app/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=mdsilo-app +SITE="mdSilo/mdSilo-app" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/mdSilo/mdSilo-app/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/media-downloader b/programs/x86_64/media-downloader new file mode 100644 index 000000000..d51954b8f --- /dev/null +++ b/programs/x86_64/media-downloader @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=media-downloader +SITE="gaeljacquin/media-downloader" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/gaeljacquin/media-downloader/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=media-downloader +SITE="gaeljacquin/media-downloader" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/gaeljacquin/media-downloader/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/notedown b/programs/x86_64/notedown new file mode 100644 index 000000000..07572d204 --- /dev/null +++ b/programs/x86_64/notedown @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=notedown +SITE="ruralad/notedown" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/ruralad/notedown/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=notedown +SITE="ruralad/notedown" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/ruralad/notedown/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/obliqoro b/programs/x86_64/obliqoro new file mode 100644 index 000000000..bcc878d90 --- /dev/null +++ b/programs/x86_64/obliqoro @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=obliqoro +SITE="mrjackwills/obliqoro" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/mrjackwills/obliqoro/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=obliqoro +SITE="mrjackwills/obliqoro" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/mrjackwills/obliqoro/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/orange b/programs/x86_64/orange new file mode 100644 index 000000000..fa574d44c --- /dev/null +++ b/programs/x86_64/orange @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=orange +SITE="naaive/orange" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/naaive/orange/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=orange +SITE="naaive/orange" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/naaive/orange/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/ow-mod-man b/programs/x86_64/ow-mod-man new file mode 100644 index 000000000..e3ca7522b --- /dev/null +++ b/programs/x86_64/ow-mod-man @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=ow-mod-man +SITE="ow-mods/ow-mod-man" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/ow-mods/ow-mod-man/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=ow-mod-man +SITE="ow-mods/ow-mod-man" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/ow-mods/ow-mod-man/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/parchment b/programs/x86_64/parchment new file mode 100644 index 000000000..288add23e --- /dev/null +++ b/programs/x86_64/parchment @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=parchment +SITE="tywil04/parchment" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/tywil04/parchment/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=parchment +SITE="tywil04/parchment" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/tywil04/parchment/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/pavo b/programs/x86_64/pavo new file mode 100644 index 000000000..64ac2172e --- /dev/null +++ b/programs/x86_64/pavo @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=pavo +SITE="zhanglun/pavo" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/zhanglun/pavo/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=pavo +SITE="zhanglun/pavo" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/zhanglun/pavo/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/pointless b/programs/x86_64/pointless new file mode 100644 index 000000000..ac690e795 --- /dev/null +++ b/programs/x86_64/pointless @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=pointless +SITE="kkoomen/pointless" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/kkoomen/pointless/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=pointless +SITE="kkoomen/pointless" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/kkoomen/pointless/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/pot-desktop b/programs/x86_64/pot-desktop new file mode 100644 index 000000000..147d5ab1f --- /dev/null +++ b/programs/x86_64/pot-desktop @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=pot-desktop +SITE="pot-app/pot-desktop" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/pot-app/pot-desktop/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=pot-desktop +SITE="pot-app/pot-desktop" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/pot-app/pot-desktop/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/recordscript b/programs/x86_64/recordscript new file mode 100644 index 000000000..57bd34073 --- /dev/null +++ b/programs/x86_64/recordscript @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=recordscript +SITE="Recordscript/recordscript" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/Recordscript/recordscript/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=recordscript +SITE="Recordscript/recordscript" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/Recordscript/recordscript/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/remind-me-again b/programs/x86_64/remind-me-again new file mode 100644 index 000000000..ad34f736a --- /dev/null +++ b/programs/x86_64/remind-me-again @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=remind-me-again +SITE="probablykasper/remind-me-again" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/probablykasper/remind-me-again/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=remind-me-again +SITE="probablykasper/remind-me-again" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/probablykasper/remind-me-again/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/seismic b/programs/x86_64/seismic new file mode 100644 index 000000000..9d55da612 --- /dev/null +++ b/programs/x86_64/seismic @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=seismic +SITE="breadthe/seismic" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/breadthe/seismic/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=seismic +SITE="breadthe/seismic" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/breadthe/seismic/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/solars b/programs/x86_64/solars new file mode 100644 index 000000000..d6d261562 --- /dev/null +++ b/programs/x86_64/solars @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=solars +SITE="hiltontj/solars" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/hiltontj/solars/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=solars +SITE="hiltontj/solars" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/hiltontj/solars/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/spicy-launcher b/programs/x86_64/spicy-launcher new file mode 100644 index 000000000..5c8673d1a --- /dev/null +++ b/programs/x86_64/spicy-launcher @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=spicy-launcher +SITE="spicylobstergames/SpicyLauncher" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/spicylobstergames/SpicyLauncher/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=spicy-launcher +SITE="spicylobstergames/SpicyLauncher" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/spicylobstergames/SpicyLauncher/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/spyglass b/programs/x86_64/spyglass new file mode 100644 index 000000000..bb719b8eb --- /dev/null +++ b/programs/x86_64/spyglass @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=spyglass +SITE="spyglass-search/spyglass" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/spyglass-search/spyglass/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=spyglass +SITE="spyglass-search/spyglass" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/spyglass-search/spyglass/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/squirrel-disk b/programs/x86_64/squirrel-disk new file mode 100644 index 000000000..7e735fe67 --- /dev/null +++ b/programs/x86_64/squirrel-disk @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=squirrel-disk +SITE="adileo/squirreldisk" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/adileo/squirreldisk/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=squirrel-disk +SITE="adileo/squirreldisk" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/adileo/squirreldisk/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/studymd b/programs/x86_64/studymd new file mode 100644 index 000000000..1b685893e --- /dev/null +++ b/programs/x86_64/studymd @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=studymd +SITE="jotron/StudyMD" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/jotron/StudyMD/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=studymd +SITE="jotron/StudyMD" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/jotron/StudyMD/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/sunny b/programs/x86_64/sunny new file mode 100644 index 000000000..30161e13c --- /dev/null +++ b/programs/x86_64/sunny @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=sunny +SITE="XMuli/SunnyPages" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/XMuli/SunnyPages/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=sunny +SITE="XMuli/SunnyPages" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/XMuli/SunnyPages/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/switchshuttle b/programs/x86_64/switchshuttle new file mode 100644 index 000000000..64f4025c5 --- /dev/null +++ b/programs/x86_64/switchshuttle @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=switchshuttle +SITE="s00d/switchshuttle" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/s00d/switchshuttle/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=switchshuttle +SITE="s00d/switchshuttle" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/s00d/switchshuttle/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/toerings b/programs/x86_64/toerings new file mode 100644 index 000000000..1f120567f --- /dev/null +++ b/programs/x86_64/toerings @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=toerings +SITE="acarl005/toerings" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/acarl005/toerings/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=toerings +SITE="acarl005/toerings" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/acarl005/toerings/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/trgui-ng b/programs/x86_64/trgui-ng new file mode 100644 index 000000000..601a36ad1 --- /dev/null +++ b/programs/x86_64/trgui-ng @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=trgui-ng +SITE="openscopeproject/TrguiNG" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/openscopeproject/TrguiNG/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=trgui-ng +SITE="openscopeproject/TrguiNG" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/openscopeproject/TrguiNG/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/ubiquity b/programs/x86_64/ubiquity new file mode 100644 index 000000000..7df5727af --- /dev/null +++ b/programs/x86_64/ubiquity @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=ubiquity +SITE="opensourcecheemsburgers/ubiquity" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/opensourcecheemsburgers/ubiquity/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=ubiquity +SITE="opensourcecheemsburgers/ubiquity" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/opensourcecheemsburgers/ubiquity/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/window-pet b/programs/x86_64/window-pet new file mode 100644 index 000000000..ac707c65e --- /dev/null +++ b/programs/x86_64/window-pet @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=window-pet +SITE="SeakMengs/WindowPet" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/SeakMengs/WindowPet/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=window-pet +SITE="SeakMengs/WindowPet" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/SeakMengs/WindowPet/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/xgetter b/programs/x86_64/xgetter new file mode 100644 index 000000000..66a07a881 --- /dev/null +++ b/programs/x86_64/xgetter @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=xgetter +SITE="xgetter-team/xgetter" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/xgetter-team/xgetter/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=xgetter +SITE="xgetter-team/xgetter" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/xgetter-team/xgetter/releases | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root diff --git a/programs/x86_64/ytmdesktop2 b/programs/x86_64/ytmdesktop2 new file mode 100644 index 000000000..601f41b92 --- /dev/null +++ b/programs/x86_64/ytmdesktop2 @@ -0,0 +1,77 @@ +#!/bin/sh + +# AM INSTALL SCRIPT VERSION 3.5 +set -u +APP=ytmdesktop2 +SITE="Venipa/ytmdesktop2" + +# CREATE DIRECTORIES AND ADD REMOVER +[ -n "$APP" ] && mkdir -p "/opt/$APP/tmp" "/opt/$APP/icons" && cd "/opt/$APP/tmp" || exit 1 +printf "#!/bin/sh\nset -e\nrm -f /usr/local/bin/$APP\nrm -R -f /opt/$APP" > ../remove +printf '\n%s' "rm -f /usr/local/share/applications/$APP-AM.desktop" >> ../remove +chmod a+x ../remove || exit 1 + +# DOWNLOAD AND PREPARE THE APP, $version is also used for updates +version=$(curl -Ls https://api.github.com/repos/Venipa/ytmdesktop2/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +wget "$version" || exit 1 +# Keep this space in sync with other installation scripts +# Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. +cd .. +mv ./tmp/*mage ./"$APP" +# Keep this space in sync with other installation scripts +rm -R -f ./tmp || exit 1 +echo "$version" > ./version +chmod a+x ./"$APP" || exit 1 + +# LINK TO PATH +ln -s "/opt/$APP/$APP" "/usr/local/bin/$APP" + +# SCRIPT TO UPDATE THE PROGRAM +cat >> ./AM-updater << 'EOF' +#!/bin/sh +set -u +APP=ytmdesktop2 +SITE="Venipa/ytmdesktop2" +version0=$(cat "/opt/$APP/version") +version=$(curl -Ls https://api.github.com/repos/Venipa/ytmdesktop2/releases/latest | sed 's/[()",{} ]/\n/g' | grep -oi "https.*mage$" | grep -vi "i386\|i686\|aarch64\|arm64\|armv7l" | head -1) +[ -n "$version" ] || { echo "Error getting link"; exit 1; } +if command -v appimageupdatetool >/dev/null 2>&1; then + cd "/opt/$APP" || exit 1 + appimageupdatetool -Or ./"$APP" && chmod a+x ./"$APP" && echo "$version" > ./version && exit 0 +fi +if [ "$version" != "$version0" ]; then + mkdir "/opt/$APP/tmp" && cd "/opt/$APP/tmp" || exit 1 + notify-send "A new version of $APP is available, please wait" + wget "$version" || exit 1 + # Use tar fx ./*tar* here for example in this line in case a compressed file is downloaded. + cd .. + mv --backup=t ./tmp/*mage ./"$APP" + chmod a+x ./"$APP" || exit 1 + echo "$version" > ./version + rm -R -f ./*zs-old ./*.part ./tmp ./*~ + notify-send "$APP is updated!" +else + echo "Update not needed!" +fi +EOF +chmod a+x ./AM-updater || exit 1 + +# LAUNCHER & ICON +./"$APP" --appimage-extract *.desktop 1>/dev/null && mv ./squashfs-root/*.desktop ./"$APP".desktop +./"$APP" --appimage-extract .DirIcon 1>/dev/null && mv ./squashfs-root/.DirIcon ./DirIcon +COUNT=0 +while [ "$COUNT" -lt 10 ]; do # Tries to get the actual icon/desktop if it is a symlink to another symlink + if [ -L ./"$APP".desktop ]; then + LINKPATH="$(readlink ./"$APP".desktop | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./"$APP".desktop + fi + if [ -L ./DirIcon ]; then + LINKPATH="$(readlink ./DirIcon | sed 's|^\./||' 2>/dev/null)" + ./"$APP" --appimage-extract "$LINKPATH" 1>/dev/null && mv ./squashfs-root/"$LINKPATH" ./DirIcon + fi + [ ! -L ./"$APP".desktop ] && [ ! -L ./DirIcon ] && break + COUNT=$((COUNT + 1)) +done +sed -i "s#Exec=[^ ]*#Exec=$APP#g; s#Icon=.*#Icon=/opt/$APP/icons/$APP#g" ./"$APP".desktop +mv ./"$APP".desktop /usr/local/share/applications/"$APP"-AM.desktop && mv ./DirIcon ./icons/"$APP" 1>/dev/null +rm -R -f ./squashfs-root