Giter Site home page Giter Site logo

botspot / cloudbuddy Goto Github PK

View Code? Open in Web Editor NEW
66.0 66.0 9.0 349 KB

CloudBuddy is the ultimate wizard for cloud storage. It uses rclone to connect to your cloud drives, download from them, upload to them, mount them to your file manager, and more. In addition, CloudBuddy features an interactive file browser to easily generate shareable links and to perform various server-side operations.

Shell 100.00%
cloud cloud-storage dropbox google-cloud google-drive onedrive raspberry-pi raspberry-pi-4 rclone rclone-gui

cloudbuddy's Introduction

Hi there ๐Ÿ‘‹

I'm just a guy who believes everyone should use a Raspberry Pi as their daily, desktop PC. Few developers share this dream and as a result, the desktop experience of Raspberry Pi OS is lacking.
Rather than complain to the Raspberry Pi developers, I became one myself.

When I was first given a Raspberry Pi 3 in 2018, I knew nothing about Linux or programming. Raspbian was harder to use back then, and I encountered many problems. Slowly, through hundreds of Google searches, I began making a list of useful terminal commands to do specific things: copy a file, create a keyboard shortcut, install something, search for a file, make a backup, close an unresponsive program, or recover from a frozen screen. Eventually, my list of commands was getting very long, and that's when I discovered shell scripts - a special text file that runs a list of terminal commands. How useful!

My first major shell-script was vdesktop - basically virtualbox but it runs on a Raspberry Pi. This command-line tool was the first RPi-compatible application capable of interacting with the virtual machine's graphical desktop session.
Next came Pi Power Tools. This application is a suite of tools for creating and modifying Raspberry Pi OS disk-images and SD cards. This was the first application I made with a GUI interface.
Pi Power Tools never became as popular as I had expected it to, so I took a step back and questioned what people really wanted. Did they want a utility to create & manage operating systems with virtual machines? Apparently not.
Then what did they want? Desktop software. In hindsight, I wonder how I missed it before - after all there are thousands (if not millions) of Raspberry Pi tutorials! The vast majority of these tutorials explain how to install 3rd-party software on your Pi. Unfortunately, most of these tutorials don't work anymore because they were written in the Raspbian Stretch era.
I thought to myself, "If only someone maintained a centralized collection of tutorials? What if those tutorials had a 'Run script' button? And what if you could easily undo the changes it made with an 'Uninstall' button?"
Thus, Pi-Apps was born.
In early 2020 it was a small application that I never imagined would see widespread use. But slowly, word spread through the community that there is finally a convenient alternative to tutorials. Soon it was added to Twister OS and not long after, Pi-Apps was featured by all the large RPi YouTubers and numerous tech publications.
Today, Pi-Apps has over 200 apps and has been downloaded several million times, though it's hard to know how many of those are unique users and how many are just installing Pi-Apps on a clean reinstall.

It turns out Pi-Apps was just the beginning. Over time I found additional software niches that nothing else was filling: (in no particular order)

  • YouTubuddy - The private, lightweight YouTube search engine & player with the best hardware-acceleration available.
  • CloudBuddy - The ultimate way to manage your cloud storage on any Linux computer. This is a bash-powered GUI frontend for rclone, and includes built-in support for Google Drive, Dropbox, and Microsoft Onedrive. It's vastly more convenient than any other web interface or tool available elsewhere.
  • AndroidBuddy - Manage your Android phone from a Linux computer. Allows complete screen control, file sharing, internet sharing, and much more. This packs more useful features in a 300-line shell script than any of the existing alternatives, most of which are abandoned.
  • Update Buddy - a sleek utility to run on startup. It runs sudo apt update in the background, and if any updates are found, it displays a non-intrusive notification, asking permission to upgrade.
  • Zoom - The popular video-chatting client had no easy way to install properly on Raspberry Pi. One other installation tool existed before mine, but that one did not install pulseaudio - a necessary utility if you wanted sound! Additionally, my version of the Zoom installer has Google account sign-in working.
  • WoR-flasher - World's first Linux-compatible tool to install Windows 10 or 11 on a Raspberry Pi SD card. Before this tool existed, you had to use a Windows PC to install Windows 10 on a Pi's SD card, but with this tool, you now can use a Pi to do it all.
  • Windows Screensavers - An efficient GUI screensaver manager, preloaded with fourteen classic Windows screensavers that run smoothly on the RPi using Wine.
  • Windows 10 Theme - A complete transformation theme for Raspberry Pi OS, designed to look like Windows 10.
  • Chromium Widevine - Watch Netflix and play other DRM-protected web-videos using the default Chromium. When Chromium 84 was released, it broke the previous DRM solution. I was the first to get it working, though there are plenty of copycats now.
  • Downgrade Chromium - The latest and greatest web browsers are not necessarily the best, or the fastest. This application allows you to easily switch versions of Chromium Browser.
  • Twister OS Updater - Twister OS's previous python-powered updating program was a nightmare to understand and maintain. I rewrote it in bash and added some additional features, and it has proven to be far better than the previous patching program.
  • UltiFlash - the world's most advanced and flexible imaging tool. This, by far, is the longest and most complicated bash script I've ever written, and it's not completely finished yet.
  • Scratch 2 - When Adobe Flash Player was deprecated, Scratch 2 was removed from all RPiOS systems through an apt update. This annoyed many people, so I found a way to bring it back and make it work again.
  • Finally, I've written, or at least reviewed, all of the app-installers on Pi-Apps.

cloudbuddy's People

Contributors

botspot avatar tdwong avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cloudbuddy's Issues

cloudbuddy disabling mounting if `fuse` is not a module

In my kernel, fuse is a builtin driver, not a module. The main.sh script disables features if fuse is not a module

The availability of fuse as a builtin or module driver can be checked with:

ls /sys/module | grep -Fx fuse

and yes, I have checked the builtin version of fuse works fine with the script otherwise if you make the below edit

Windows

Botspot if you would have any expireince on windows, maybe you could deploy it to windows or a web interface. That would be amazing. BTW, I love all the projects you worked on. Especially Pi-apps.

Pi-Apps

More of a suggestion than an issue, will you add this to pi-apps?

Remote upload possible

Let us assume below scenario :-

I have multiple static download links with me saved in notepad file which are media in nature. Is the remote upload directly from url to onedrive is possible...?

Url can be in placed inside notepad file or pasted in batch. Whichever is possible.

GoogleDrive issue

Hi,

So while OneDrive works a treat, I am having little luck with connecting to my GoogleDrive. Using the CloudBuddy gui, I can name a new cloud drive (MyGoogleDrive), but when I click on the GoogleDrive button, all that happens is the gui retracts to a single 'cancel' button, and it stays there. No rclone driven browser window opens to allow me to enter my login details for google drive.

So if I push the 'cancel' button, the gui returns. If I now look at listed drives in the gui "MyGoogleDrive" appears in the list - so I removed it so that I could try a more basic approach. On my second attempt, I opened a terminal and ran the 'main.sh' script so I could monitor the commands being executed. The gui popped up as usual and I went through the motions again. It still halted at the same place, with no browser window opening, and only a 'cancel' button showing. I have copied the terminal output into the attached file. It stops on an entry requiring a 'service_account_file'. No default value is given, and the line above says 'Press enter to leave empty'. So I did that in the terminal (after a few minutes), but the whole script terminates and I am back at the terminal cursor. I have added some comments into the terminal transcript, detailing what I did at those points. Those few entries are surrounded by [ ].

All suggestions appreciated. Note that through the standard Chromium window I can log in, and navigate, my actual GoogleDrive.

GoogleDrive_terminal.txt

Issue using File Manager

Issue: I can't access mounted drive through File Manager, but can access through terminal with sudo prefaced commands.

Setup: Raspberry Pi400 running with Raspberry OS (bullseye, 64 bit). Using CloudBuddy, I mount my OneDrive repository to the empty directory 'cloud' (/home/pi400/cloud).

Before mounting, the directory's permissions are:

    drwxrwxrwx 2 pi400 pi400 4096 Jul 19 08:41 cloud

After mounting, the directory's permissions change to:

    d????????? ? ?     ?        ?            ? cloud

As stated, File Manager can no longer access the directory after OneDrive is mounted (the mount does appear in left hand top panel), however I can browse/delete/create the mounted OneDrive directories and files by using terminal commands, prefaced by sudo. Without sudo, I receive the standard:
ls: cannot access 'cloud': Permission denied

Using 'sudo chmod u+rwx cloud' has no effect while OneDrive is mounted to the directory cloud.
This may not be an issue if I have missed something in setting up CloudBuddy? However I believe I have followed all the steps.

Some files/folders have no file size

image
I've noticed this appears with folders, and also files like .docx and .xlsx and .svg, but there are probably more file types that don't have a file size. Also, you could perhaps use some commands to remove of modify weird stuff in the dates?
image

Breaks after fail to unmount drive

image

I keep forgetting to cd out of the folder before unmount, perhaps implement a warning if a unmount fails with a already in use error?

How to start at boot?

I know, this is not an issue.
But it is a nice tool and easy to use.
But is there a way to start it automatic at boot?
Thanks

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.