Coder Social home page Coder Social logo

ubports / ubports-installer Goto Github PK

View Code? Open in Web Editor NEW
529.0 35.0 119.0 15.04 MB

A simple tool to install Ubuntu Touch on UBports devices

Home Page: https://github.com/ubports/ubports-installer/releases

License: GNU General Public License v3.0

JavaScript 67.25% Shell 0.03% CSS 0.27% HTML 0.09% Svelte 32.35%
desktop-tool electron nodejs

ubports-installer's Introduction

UBports Installer Continuous Integration snap codecov

Fear not! Installing UBports Ubuntu Touch on your device is easy! Just download the UBports Installer package for your operating system and sit back and relax while your computer does all the rest. Installing third-party operating systems has never been so easy!

linux logo   Linux mac logo   macOS windowslogo   Windows
snap
snap install ubports-installer
AppImage
deb
dmg exe

Troubleshooting

Troubleshooting information can be found in the docs. If you need help, you can join UBports' support channels on telegram or matrix or ask a question in the forum or on askubuntu. If you believe that the UBports Installer is not working correctly, you can also file a new issue to help us solve the problem. Use the Report a bug button directly in the installer to generate a template for a bugreport with all the important metadata automatically filled out.

Config files

By default, the Installer will always use the latest version of the installation configuration files available. Should you want to specify a custom config file, you can do that by starting the Installer with the -f ./path/to/config.yml argument. This can be used to test changes to the configuration or even to add new devices to the installer. The structure of the config files is specified here.

Logs

If the installer runs into an error, it will usually present you with the option to create a bug report. It is always a good idea to make use of that feature, because that way the developers will almost always have all the information they need to help you. If you still have to look at the log file for some reason, you can find it in ~/.cache/ubports/ubports-installer.log on linux (or ~/snap/ubports-installer/current/.cache/ubports/ubports-installer.log if you're using the snap package). On Windows, it will be located at %APPDATA%\ubports\ubports-installer.log and on macOS you can find it under $HOME/Library/Caches/ubports/ubports-installer.log.

Set up for development

Ensure you have properly installed nodejs and npm.

git clone https://github.com/ubports/ubports-installer.git
cd ubports-installer

npm install

Run with npm

$ npm start -- -h
Usage: npm start -- [-f <file>] [-v[v] [-d]

UBports Installer (0.7.2-beta) source for linux
GPL-3.0 UBports Foundation <[email protected]>
The easy way to install Ubuntu Touch on UBports devices. A friendly cross-platform Installer for Ubuntu Touch. Just connect a supported device to your PC, follow the on-screen instructions and watch this awesome tool do all the rest.
https://devices.ubuntu-touch.io

Options:
  -V, --version        output the version number
  -f, --file <file>    Override the official config by loading a YAML local file
  -v, --verbose        Print debugging information. Multiple -v options increase the verbosity
  -d, --debug          Enable electron's web debugger to inspect the frontend (default: false)
  --systemimage <url>  Set a custom systemimage server url (default:
                       "https://system-image.ubports.com/")
  -h, --help           display help for command

Lint

Before filing a PR, please make sure you follow our coding style by running npm run lint.

Build packages

$ ./build.js --help
Usage: ./build.js -o <os> -p <package> -a <arch> [options]

Options:
  -V, --version                output the version number
  -o, --os <os>                Target operating system (darwin, win32, linux) (default: "linux")
  -p, --package <package>      Target package (deb, snap, AppImage, dmg, portable, dir) (default: "dir")
  -a, --arch <architecture>    Target architecture (armv7l, x64, ia32, arm64) (default: "x64")
  -e, --extra-metadata [JSON]  extra data for package.json (default: "{}")
  -h, --help                   output usage information

Libraries

The UBports Foundation maintains a various free- and open-source NPM libraries for the UBports Installer.

Package Version Description
progressive-downloader version Parallel downloads and opportunistic checksum verification
promise-android-tools version Extensive wrapper for ADB, Fastboot, Heimdall
android-tools-bin version Cross-platform binaries for ADB, Fastboot, Heimdall
open-cuts-reporter version Report test results to UBports OPEN-CUTS

License

Original development by Marius Gripsgård and Johannah Sprinz. Copyright (C) 2017-2022 UBports Foundation.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

ubports-installer's People

Contributors

1peter10 avatar amartinz avatar comradekingu avatar dependabot[bot] avatar flohack74 avatar gsilvapt avatar ingo-fp-angel avatar it-jonas avatar iwaduarte avatar ix5 avatar jrtberlin avatar lin8x avatar llewelld avatar lweiss-fairphone avatar maciek134 avatar mariogrip avatar neothethird avatar nikalon avatar pajlow avatar paul-hammant avatar pilot-pirx avatar probonopd avatar quacklabs avatar sergiusens avatar t2hhbmek avatar timsueberkrueb avatar tsimonq2 avatar universalsuperbox avatar vince1171 avatar z3ntu 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  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  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

ubports-installer's Issues

Fastboot: Unknown error: [sudo] password for derfen: target reported max download size of 1073741824 bytessending 'recovery' (11844 KB)...OKAY [ 0.584s]writing 'recovery'...FAILED (remote: not supported in locked device)finished. total time: 0.684s

Trying to flash a nexus 5 with the appimage program

Fastboot: Unknown error: [sudo] password for fred: target reported max download size of 1073741824 bytes
sending 'recovery' (11844 KB)...
OKAY [ 0.584s]
writing 'recovery'...
FAILED (remote: not supported in locked device)
finished. total time: 0.684s

Find a solution for the FP2 vendor ID

The FP2 vendor id needs to be added manually by running echo 0x2ae5 >> ~/.android/adb_usb.ini at the moment. This could be solved by making the installer run that in the beginning of every installation on an FP2, but for confined snaps we might have to find a different solution. Maybe the adb could be set up to listen to all devices, not only authorized ones.

Install gets stuck at reboot to fastboot stage

When trying to install UBports on my device, the process starts out well. The installer gets me to select an image/branch, gets me to plug in the device, enable developer mode, asks if I want to wipe the device. and then it asks me to reboot into fastboot mode.

At this point the installer stops. I reboot my device, make sure it's at the proper screen, but the installer remains stuck, asking me to reboot. I've tried running through the steps three times and each time the installer appears to be unaware the phone has rebooted and is waiting on the fastboot screen.

This happens with both installer versions 0.1.6-beta and 0.1.7-beta. I'm trying to upgrade a Meizu Pro 5 phone which currently runs Ubuntu Touch 15.04. The UBports installer I am using is the one bundled as an AppImage package.

The output displayed by the installer to my terminal is as follows:

debug: adb shell: echo 1
debug: fastboot: wait for device

I was told on Twitter by a UBports member that this issue is known, but I did not see a report for it, so I'm posting this so I can track the bug's progress.

Publish a new release

Publish a release with the latest fixes so people can start testing without using npm start.

AppImage 0.1.6-beta "Error in the format of the program file" and wrong filename

I tried downloading and executing the 0.1.6 beta here:
https://github.com/ubports/ubports-installer/releases

the filename doesn't go together with the version number.
should be 0.1.6-beta and the filename contains 0.1.5-beta
When executing the file I get following error message:
German:
bash: ./ubports-installer-0.1.5-beta-x86_64.AppImage: Kann die Binärdatei nicht ausführen: Fehler im Format der Programmdatei

the error message translated to english:
bash: ./ubports-installer-0.1.5-beta-x86_64.AppImage: Can not execute the binary file: Error in the format of the program file

Impossible to install UBports on the latest Fairphone 2

What happened:
Impossible to install UBports on the latest Fairphone 2

Steps to reproduce:

  • Latest Appimage from https://github.com/ubports/ubports-installer/releases downloaded.
  • AppImage made executable.
  • Double-click on the file.
  • Fairphone 2 received last week (with Android 6.1) and connected to the computer with a USB cable.
  • Device not found, selected manually ("Fairphone 2" in the list).
  • Channel "15.04/devel" selected in the install options, and "Wipe" checkbox ticked.
    Note: the devel channel is used instead of stable to allow the compatibility with Android 6.1, as explained in this issue.
  • Password from the computer entered.
  • Power and volume down buttons pressed down until reboots (bootloader black screen with FAIRPHONE POWERED BY ANDROID).
  • Nothing happens after several minutes (no feed-back, no "Next" button in the GUI).

What I expected to happen:
Continuation of the installation (UBports robot with eyes blinking, restart on Ubuntu Touch).

Logs:
None (?).

Software Version:
Computer on Ubuntu 16.04 LTS (updates done).

README.md doesn't mention the snap installer

https://github.com/ubports/ubports-installer/blob/master/README.md

snap info ubports-installer
name: ubports-installer
summary: GUI installer for ubports devices
publisher: mariogrip
contact: https://ubports.com
description: |
This is an GUI installer for ubports ubuntu touch devices.
snap-id: mq0sTMV7a8744UTRBwQHimStAqsGzbjj
commands:

  • ubports-installer
    tracking: stable
    installed: 0.1.7-beta (6) 88MB devmode
    refreshed: 2017-09-22 18:18:27 +0300 EEST
    channels:
    stable: 0.1.7-beta (6) 88MB -
    candidate: 0.1.7-beta (6) 88MB -
    beta: 0.1.7-beta (6) 88MB -
    edge: 0.1.7-beta (6) 88MB -

Installer does not detect Fairphone 2 without sudo in 17.10

I've tried the following to get the installer (0.1.9) to run correctly under Ubuntu 17.10:

  • Add udev rules
  • Install fastboot and adb onto the system
  • Run the installer from the terminal with or without either of the two above options

However, the only way that I can get it to reliably detect my Fairphone is with sudo ./ubports-installer[...].AppImage.

I'll continue to collect reports from others with different devices.

Password visible if app is launch within a shell

Hi,

Thanks for your installer, which is very helpful.
A little thing bothered me, as I launched the app from within a shell, I saw my password clearly written in stdout in the shell.
I think it would be better if it was obfuscated, even if launching from a shell may be not the main way to start ubports-installer.
regards

installer stuck 0.1.8

i'm running ubports-installer-0.1.8-beta-x86_64.AppImage on ubuntu 16.04
i have 16.04/devel and want to flash 15.04/stable
ubports installer detects the Fairphone 2 but then it hangs at the next step (install) with the "please connect your device with an usb cable". but that's silly because it is connected and detected the phone just fine.

ub2

the last debug line is "debug: fastboot: wait for device". so.. should i manually put the phone into fastboot? o_O

./ubports-installer-0.1.8-beta-x86_64.AppImage
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: echo 1
debug: adb shell: getprop ro.product.device
debug: getprop: FP2
debug: adb shell: cat /etc/system-image/channel.ini
debug: adb shell: echo 1
debug: reboot to bootloader
debug: checking password
debug: correct password
debug: fastboot: wait for device

Installation gets stuck due to out-of-date adb server

Sometimes the installer gets stuck with an out-of-date adb server as indicated by eg. the installer waiting for the device to enter recovery mode for ages. When running from source, this can be fixed by running adb devices in a seperate terminal, so adb automatically restarts the adb server and the installation proceeds.

Can't install on a FP2 w/ TWRP

I followed the advice of UbPorts and now I'm at a death end. I got the Advice to reboot into Recovery. I'm now in it but nothing more happened.

Ubuntu 17.10 in VMware Workstation 14
Installed with snap
stable branch
Fairphone 2

Package as a snap

It would be nice to package this as a snap, just for the nerd-cred.

App hangs on indefinitely after booting to recovery (FP2)

Hello,

This is probably a duplicate but since #44 was tagged 0.1.8 and #52 was flagged as not needed anymore, I think it deserves a new issue.

Everything is going fine till the GUI asks to reboot to recovery mode. I press the buttons till the phone vibrates and the program does not detect the phone anymore. I get a dialog box from my OS warning that the phone cannot be mounted, and the terminal shows only the following lines:

debug: adb shell: echo 1
debug: Running platform tool exec cmd adb -P 5038 shell echo 1
debug:  Error: Command failed: adb -P 5038 shell echo 1
error: device unauthorized.
This adb server's $ADB_VENDOR_KEYS is not set
Try 'adb kill-server' if that seems wrong.
Otherwise check for a confirmation dialog on your device.

    at ChildProcess.exithandler (child_process.js:217:12)
    at emitTwo (events.js:106:13)
    at ChildProcess.emit (events.js:194:7)
    at maybeClose (internal/child_process.js:899:16)
    at Socket.<anonymous> (internal/child_process.js:342:11)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:191:7)
    at Pipe._handle.close [as _onclose] (net.js:510:12)

Few words about how I got there:

The FP2 is running Fairphone Open (latest stable) with developer mode enabled.
On Debian GNU/Linux 9 with node 6.12.2, I cloned this repository and ran (from commit 9b8d6e) :

npm install
npm start

Enabled debugging on FP2 OS (dialog popping up), the app detects the FP2, switched to 15.04/devel + no wipe and everything went well till the reboot to recovery procedure.

I also tried the echo 0x2ae5 >> ~/.android/adb_usb.ini command given in other issues, and restarted (had to reboot to bootloader manually and select FP2 manually but the app managed to connect to the phone nevertheless). Yet the end result is the same from my point of view.

Note that my knowledge about android is quite limited, but I'd gladly run any command you may deem necessary to help you pinpoint the issue.

Package as a deb

Appimages are not very well-known, so a deb package would be helpful.

ubports-installer does not detect fp2

ubports-installer does not detect fp2
i'm using ubports-installer snap - installed: 0.1.7-beta (6) 88MB devmode - on Ubuntu 16.04
and i'm on 15.04/devel r183 on the phone
err

i can see the phone in nautilus, and "adb shell" works fine, i can connect to the phone. i also have developer mode enabled

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.