Git Product home page Git Product logo

lineageos-installer's Introduction

LineageOS-Installer

HEADS UP: This project is more-or-less abandoned. It does NOT support A/B partitioned devices. It will still probably work for devices such as Nexus devices as they follow the traditional ROM-flashing format, but no guarentees of success can be made. Use at your own risk.

Focus List

Idk what to call this section so I'll call it the "Focus List". Essentially these are just ideas that will be implemented soon.

  • Channels: The user can pick between a stable channel that will automatically download all files. This will only be available for select devices.
  • Samsung Devices: Samsung Devices are some of the most popular in the world. Unfortunatly, Samsung has been making an effort to lock down their devices. As such, older models (think S3, S4, S5) will be primarily targeted at first.

Source Patch Notes:

Some notable features have been committed, but not added to a release just yet. These features are not considered "big enough" to push as an update on their own.

  • Channels UI: The user can now pick between "Stable" and "Advanced" channels. The latter leads into what the application has been so far, but with options to skip file check (perhaps if you modified a script to flash an additional file) and/or go directly to the installation. The stable channel is not ready yet (and is disabled in the UI, but enabling via source won't do anything either) as LOS builds have no stable rollout available. If/when those become a thing, the user will simply select their (supported/tested) device, and all files will be automatically downloaded. We should be able to directly download the LineageOS zip and TWRP img from their respective mirrors, but GApps requires custom hosting as their website doesn't permit this. We also can't redistribute their prebuilt binaries. No problem; behold! This repository hosts GApps compiled by yours truly, and we can directly download from GitHub! I haven't flashed and tested them, but I don't see why they wouldn't work. Currently I only have ARM for API 25, but I intend to get APIs 24-27 uploaded soon.

  • Control-colored issues (such as button pre-highlighting) have been fixed

Version 2.0

On December 22, 2017, development on version 2.0 began.

What is new

  • Proper names for forms
  • Forms designed to look like message boxes have been removed. Now, labels and buttons appear in the respective form.
  • Use of Ignace Mae's "Material Skin" (as opposed to colored labels and picture boxes)
  • This means window borders, along with buttons and text all follow Material Design! Buttons have animation when you hover and click them, although with the set up of this application, the animation for floating buttons isn't seen. Hopefully this can be fixed, but it isn't a major issue.

  • A nicer installation screen with a progress bar
  • A new guide for enabling USB Debugging, written in HTML. This guide isn't complete yet.
  • The form (yes - form without the "s;" all files are downloaded in one form, with the browsers being shown/hidden at the click of a button) to download files is now bigger, and an "Open in Browser" button was added incase the page proves difficult to use in a confined space or simply won't display correctly.
  • The ADB check is now automatic (needs improvement, see below)
  • A file check is now performed prior to installation that checks for the LineageOS Zip, GApps Zip, TWRP, and all installation scripts.

What is to come

  • Foreign language support (see below)
  • Support for Samsung Devices if possible

What isn't complete

  • ADB Check is not complete; although it can check to see whether the device is connected, it cannot determine whether the user allowed the connection to be authorized.
  • Foreign language support will come with text that is programatically set at run time or through the LangSelect form. It is partially implemented for English but it is not complete; only a few forms (and even those may be incomplete) are set up for this right now. The HTML pages also won't change with this button; for local pages ("Set Up Your Device") we could probably just add each language's "Set Up Your Device" page.
  • Flat buttons are pre-highlighted.

What is new in the repository

  • Removed adb executible for now; it is unclear whether ADB and Fastboot can be redistributed. If they can, they will be included in the application.
  • Removed Land.png, Next and About button textures as they are all now irrelevant.

A simple, graphical solution to installing LineageOS.

NOTE 1: The repository has been renamed from Lineage-OS-Installer to LineageOS-Installer. Keep this in mind next time you commit to the repository if something goes wrong.

NOTE 2: The embedded browsers have been replaced by a better solution called Awesomium. Please download it at "http://www.awesomium.com/download." This will allow us to render web pages correctly, as it is based on Chromium.

A prebuilt version (ready to install, the "normal user" version) can be found here.[Prebuilt version may not work. If this is the case, please build it from the source.] However, the application is still young, so do not expect it to work perfectly (so back up your data and understand what you will have to do in case you/the application mess up). If you have a Nexus device, this should work like a charm. Also, if you have a device that follows the process of "Unlock the bootloader with fastboot oem unlock, flash recovery, flash the rom," the installer will probably work, although it has a chance of failure. But if you're daring enough to try the installer, give it a whirl! Report your results (good or bad) at this thread

The developers of this application and the LineageOS Community is not responsible for anyone who bricks their devices. This tool is still in development.

TESTED DEVICES:

  • Nexus 7 2013 [WiFi] (flo) by PJBeans on 1.4.0: Worked like a charm
  • Nexus 5X by NateDev on 1.2.0: Worked, although ADB and Fastboot didn't function correctly out-of-the-box.

Versions

  • Prebuilt: v2.0-development
  • Source: v2.1-development (Still referred to as v2.0)

How can I contribute?

You can contribute right here on GitHub! If you know Visual Basic, feel free to modify the installer to fix an issue, add something or delete something obsolete. You can also test the installer for your device, and report your results on this thread.

What is here:

  • Embedded web browsers for downloading TWRP, GApps, and LineageOS
  • Images to illustrate where to find Developer Options, USB Debugging, and OEM Unlocking
  • The prebuilt program includes a setup script that copies all needed files.

What is not here:

  • Support for Samsung Devices
  • Possibly support for other devices (If Fastboot mode acts differently for some reason on other devices; I am not sure)
  • A help (support) page

FAQ:

[-] Why would I want to use this?

See this

lineageos-installer's People

Contributors

entriphy avatar pj-oscheh avatar qwertychouskie 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

lineageos-installer's Issues

Awesomium-Not-Found

As reported by "dinesh_redhawk" on the XDA forums, Awesomium is not bundled with the Application correctly.

Report:

See the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.InvalidOperationException: An error occurred creating the form. See Exception.InnerException for details.  The error is: Could not load file or assembly 'Awesomium.Windows.Forms, Version=1.7.5.1, Culture=neutral, PublicKeyToken=9bd24830fbe304a0' or one of its dependencies. The system cannot find the file specified. ---> System.IO.FileNotFoundException: Could not load file or assembly 'Awesomium.Windows.Forms, Version=1.7.5.1, Culture=neutral, PublicKeyToken=9bd24830fbe304a0' or one of its dependencies. The system cannot find the file specified.
   at LineageOS_Installer.Form3.InitializeComponent()
   at LineageOS_Installer.Form3..ctor()
   --- End of inner exception stack trace ---
   at LineageOS_Installer.My.MyProject.MyForms.Create__Instance__[T](T Instance)
   at LineageOS_Installer.My.MyProject.MyForms.get_Form3()
   at LineageOS_Installer.Form2.PictureBox1_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.6.1637.0 built by: NETFXREL3STAGE
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
LineageOS Installer
    Assembly Version: 1.0.0.0
    Win32 Version: 1.0.0.0
    CodeBase: file:///C:/Tools/LineageOSInstaller/LineageOS%20Installer.exe
----------------------------------------
Microsoft.VisualBasic
    Assembly Version: 10.0.0.0
    Win32 Version: 14.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.6.1637.0 built by: NETFXREL3STAGE
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.6.1638.0 built by: NETFXREL3STAGE
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Runtime.Remoting
    Assembly Version: 4.0.0.0
    Win32 Version: 4.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
Accessibility
    Assembly Version: 4.0.0.0
    Win32 Version: 4.6.1586.0 built by: NETFXREL2
    CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

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.