Git Product home page Git Product logo

itai-nelken / pi-assistant Goto Github PK

View Code? Open in Web Editor NEW
10.0 2.0 2.0 71.33 MB

Pi-Assistant is a simple terminal app made for the Raspberry Pi that makes updating the system, installing apps, viewing system information, and more easier than ever

License: MIT License

Shell 100.00%
raspberrypi twisteros pi-assistant install raspbian-buster raspberrypios raspbian uninstall installer updater

pi-assistant's Introduction

logo Pi-Assistant

version badge license badge made-with-bash badge

NOTE: Pi-Assistant isn't maintained anymore. use at your own risk!

Pi-Assistant is a simple terminal app made for the Raspberry Pi that makes updating the system, installing apps, viewing system information, and more easier and faster, especially if you are new to the Linux command line or you forget the commands.

links

Installation

to install Pi-Assistant, just copy the following into terminal:

$ wget -qO- https://raw.githubusercontent.com/Itai-Nelken/Pi-Assistant/main/install.sh | bash

Install beta version (not always available)

  1. go to the beta branch
  2. download the specific beta scripts you want
  3. replace the "stable" scripts with the "beta" scripts you just downloaded
    Don't update Pi-Assistant or the beta scripts will be replaced with the stable ones

Use Pi-Assistant

Run Pi-Assistant

To run Pi-Assistant, use the menu or Desktop shortcuts. alternatively you can type in terminal (from anywhere) piassist
when running with piassist you can add flags, to see a list off all flags run piassist --help or see the list bellow.

Flags

--help - show all flags and how to use them and exit.
--no-internet - run pi-assistant without checking for internet (use when you want to start Pi-Assistant without a internet connection).
--no-update - don't check for updates on startup.
--version - print version and exit.
--secret - a secret easter egg ๐Ÿ™ƒ

Some flags have shorter versions

-h = --help
-ni = --no-internet
-nu = --no-update
-v = --version

if you have any questions, check the FAQ before opening a issue please.

Updates

Pi-Assistant checks for updates and if there are installs them automatically on startup.
To update manually, start Pi-Assistant and go to other>update-this-tool if that doesn't work, or you think something is broken with the scripts, run this command:

$ wget -qO- https://raw.githubusercontent.com/Itai-Nelken/Pi-Assistant/main/updater.sh | bash

removal

Pi-Assistant v1.1.1 and later has a removal script in other>remove if you have an earlier version or need to manually remove, open terminal and copy:

$ wget -qO- https://raw.githubusercontent.com/Itai-Nelken/Pi-Assistant/main/uninstall.sh | bash

Screenshots

piassist-mainmenu.png

More screenshots

The system information option

piassist-sys-tools.png

Demo (the output of some of the commands is outdated)

piassist-demo.gif

How a update (on startup) looks like

updater.png

Known issues and bugs

  • zoom menu icon doesn't work for some reason.

Internal stuff (commands used by the scripts)

Updater flags (meant for the internal use of the scripts)

Usage of the updater:

~/Pi-Assistant/updater.sh --flag but change --flag with a real flag or remove it to run the default.
--no-output - update with no extra output (for example don't print 'checking for updates'). used when Pi-Assistant is starting.
--no-ask-exit-output - don't ask to exit and don't print any extra output (has no use as of writing).
--output-no-ask-exit - print extra output but don't ask to exit (used when manually updating).
--all-executable - make all scripts executable (has no use as of writing).

the default is to print extra output and ask to exit.
the flags that have no use are there just to have all options in case I'll need them in the future.

To do:

  • return to main menu instead of exiting when executed command finishes
  • add uninstall script
  • add updater script
  • make updater script to run on startup (disable by using the --no-update flag. the --no-internet flag disables updates as well.)
  • add dialog GUI
  • add my QEMU debs.
  • add box86 install script for 64bit OS's
  • maybe change whole gui to use YAD? or make a GUI using python? or using gtk and c?
  • implement app "remembering" system - in other words make Pi-Assistant remember every app it installs.

FAQ

Q:

How can I start Pi-Assistant without a internet connection?

A:
run Pi-Assistant from terminal with this command: piassist --no-internet or use the shorter version like this: piassist -ni.

Q:

How can I disable update on startup?

A:
run Pi-Assistant from terminal with the --no-update flag like this: piassist --no-update or use the shorter version like this: piassist -nu.

Notes

system-information uses a external service for checking the public IP address. the exact link the script uses is: http://ipinfo.io/ip/.

pi-assistant's People

Contributors

cleanmachine1 avatar itai-nelken avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

c-eo mlohdael

pi-assistant's Issues

Github Backup Tool

Hello,

I made a script that backs up Github repositories and I was wondering if it could be added.
The repo is here

Thanks,
slashtechno

Zoom

for some reason wget cant download zoom and exits with error 403 forbidden

I'm working on finding a fix

Make GUI dialog?

Have you thought about making a GUI dialog for this? You can use something like

#!/bin/bash

HEIGHT=15
WIDTH=40
CHOICE_HEIGHT=4
BACKTITLE="Backtitle here"
TITLE="Title here"
MENU="Choose one of the following options:"

OPTIONS=(1 "Option 1"
         2 "Option 2"
         3 "Option 3")

CHOICE=$(dialog --clear \
                --backtitle "$BACKTITLE" \
                --title "$TITLE" \
                --menu "$MENU" \
                $HEIGHT $WIDTH $CHOICE_HEIGHT \
                "${OPTIONS[@]}" \
                2>&1 >/dev/tty)

clear
case $CHOICE in
        1)
            echo "You chose Option 1"
            ;;
        2)
            echo "You chose Option 2"
            ;;
        3)
            echo "You chose Option 3"
            ;;
esac

To make a GUI that looks like
image

implement app "remembering" system

To do

  • first of all make Pi-Assistant "remember" any dependencies for itself it installed (only if the install script installed them).
  • make Pi-Assistant "remember" all other apps.
  • add a dialog asking if you are sure you wan't to reinstall a app if you try to install a already installed app, if yes uninstall and reinstall it.
  • add a "Pi-Assistant settings" or "Configure Pi-Assistant" option to the main menu where you can select if you want to reinstall a app if you select install or just simply install it again.

Static IP

Please make a tool that sets a static IP for the Raspberry Pi. That would be so useful because I believe there are no scripts that I have heard of that set a static IP.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.