GithubHelp home page GithubHelp logo

clearlinux / clr-installer Goto Github PK

View Code? Open in Web Editor NEW
90.0 90.0 42.0 8.41 MB

Clear Linux* OS Installer

License: GNU General Public License v3.0

Makefile 1.48% Go 92.87% Shell 5.18% Python 0.16% CSS 0.30%
golang installer

clr-installer's People

Contributors

ahkok avatar alexjch avatar bryteise avatar bwarden avatar castulo avatar dependabot[bot] avatar djklimes avatar evil-brain avatar grothja avatar gtkramer avatar ikeyd avatar karthikprabhuvinod avatar lasiar avatar lebensterben avatar mdhorn avatar miguelinux avatar opensauce04 avatar pdxjohnny avatar puneetse avatar reaganlo avatar thac0 avatar tomlanyon avatar tpalli avatar zvnexus 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

clr-installer's Issues

Customize kernel cmdline

Issue by asifhg
Monday May 07, 2018 at 18:38 GMT


Allow the user to completely edit the default kernel cmdline, instead of only appending to it.

Add a final "Are You Sure?"

After network check, but before any media changes, add one final PopUp with a "Are you sure" prompts which shows the target media that will be changed.

Default language is set to "Unknown Language"

Describe the bug
Choose Language has a default of "Unknown Language", but it is not
selected automatically as an item that needs to be configured -- instead we
auto-select Partition Disks. Also lets me install even though the language
option is "Unknown"

To Reproduce
Steps to reproduce the behavior:

  1. Launch installer
  2. Go to the "Required" options tab
  3. See the Language menu current settings line

Expected behavior
Should list the currently set language.

Screenshots
N/A.

Environment (please complete the following information):
N/A

Additional context
N/A.

TUI hardcoded values

Describe the bug
Currently the TUI code has a few hadcoded values (i.e frame sizes), it could be dynamically calculated.

To Reproduce
N/A

Expected behavior
N/A

Screenshots
N/A

Environment (please complete the following information):
N/A

Additional context
N/A

Allow use of WiFi for Installation

Issue by mdhorn
Wednesday Feb 21, 2018 at 00:59 GMT


  • Present the use with the list of discovered WiFi Network.
  • Collect the necessary authentication type, [username], password
  • Allow for manually enter a Hidden SSID
  • All WiFi connection information should be saved as part of the standard data model configuration file

This is lower priority after the primary Installation flow which matches current Installation functionality has been completed.

Estimated Effort: 1.5 man weeks

Support creating image with dnf

Support adding RPMs via dnf after initial os-core install via swupd.

This is primarily for testing and validation use scenario where newly created version of RPMs need to be tested, but the image is only around for testing and won't be updated.

Telemetry should be started with telemctl, not systemctl

Describe the bug
The latest version of the telemetry server split up the services, so the old name being used by 'systemctl' is no longer valid in the latest Clear Linux release.

Expected
Use the 'telemctl' for all state changes to telemetry services.

Create new Installer Bundle

Issue by mdhorn
Thursday May 24, 2018 at 21:26 GMT


Create and release a new bundle for the new clr-installer

Ensure this bundle includes the necessary packages for languages and keyboard layouts.

Add more linters/checkers to code check

Issue by mdhorn
Friday Jun 01, 2018 at 00:10 GMT


Add the '-race' flag to the 'go test' command to check for possible race conditions.

Consider adding the 'dupl' linter to the code checker to look for "duplicate" code fragments.

Show defaults for language/keyboard

Issue by matthewrsj
Thursday May 03, 2018 at 17:42 GMT


Show what the default is in these screens so I don't feel like I have to scroll through the huge list to select something that is probably already configured.

Progress implementation missing should not panic installation

Issue by mdhorn
Friday Aug 03, 2018 at 20:55 GMT


Not setting a progress implementation should not prevent the user from completing an installation -- this is not essential information for an install.

Consider implementing a fallback/default process implementation instead of panicking.

Completing an installation with a "messy UI" is better than failing without a path to install.

scroll menu with mouse

Describe the bug
Should it be possible to move the scrollable frame via the scrollbar with the mouse? Only tabbing/arrows seem to work.

To Reproduce
N/A

Expected behavior
N/A

Screenshots
N/A

Environment (please complete the following information):
N/A

Additional context
N/A

use 80x24 window size

Describe the bug
Now that we have a scrollable frame, why can't I see things correctly
when the window is shorter than 31 rows. I would expect, the worse case
that we could shrink until only a single item in the scrollable frame is
displayed.

To Reproduce
N/A

Expected behavior
N/A

Screenshots
N/A

Environment (please complete the following information):
N/A

Additional context
N/A

Can't scroll to see messages output during an install

As noted in #98, the progress display messages showing the final part of the installation can produce enough output that the text scrolls off the screen, but there's no way to scroll back to see what was output. In this particular case, some warnings were generated and I wanted to see if there were others, but no scrolling option was available.

To Reproduce
See the steps in #98. (I had selected all the available extra bundles as part of my manual install so LOTS of "progress dots" were written to the screen and many packages were installed. Curiously, the "progress dots" appeared all at once instead of a few dots every once in a while during the download/install.

Image Generation Requirement

Ensure the image generate tool is compatible will existing commands which currently use ister.py

  • Example, mixer build image –native
    This is just a wrapper around calling another command:
ister.py --template-file file:///home/loon_123/mixer/release-image-config.json 
--contenturl=file:///home/user/mixer/update/www 
--versionurl=file:///home/user/mixer/update/www 
--format=25

Sudo Missing from default install

Describe the bug
If a user is added with "Admin" enabled, the account is created and placed in the right groups, but the sudo bundle is not installed on the target system.

To Reproduce
Steps to reproduce the behavior:

  1. Run the installer
  2. Add a user on the Advance configuration Tab
  • Check the "Admin" box for the new user
  1. Complete the Install
  2. Log into the new user account
  3. Try to run a sudo command

Expected behavior
The sudo binary (and required configurations) are installed on the target image when a user account with admin privileges is created.

Missing a theme should not stop installation

Issue by mdhorn
Friday Aug 03, 2018 at 20:50 GMT


Need to rework the code that loads the theme for the TUI to not fail when missing the theme file.

An external color theme for the UI should not be something that prevents the user from completing the installation process -- a color theme is not essential.

Perhaps create some hard-coded, built-in theme set to fail back to versus panicking the program.

Mouse click processed in wrong Tab

Describe the bug
When clicking with the mouse on a menu button in the Advanced Tab, it runs the menu button in the same location on the Required Tab.

To Reproduce
Steps to reproduce the behavior:

  1. Start Installer
  2. Type 'A' to switch to the Advanced Tab
  3. With the Mouse, click on "Assign Hostname"
  4. Instead of the Hostname dialogue, you will see the Enable Telemetry from the Required Tab

Expected behavior
The dialogue for the clicked Menu button is started

Environment (please complete the following information):

  • Clear Linux OS Version: [
Installed version: 24710
Version URL:       https://download.clearlinux.org/update/
Content URL:       https://cdn.download.clearlinux.org/update/
  • Installer Version [clr-installer -v]
    clr-installer: 0.8.0

"Linkname can't be converted" warning during bare-metal install

Getting these warnings during a bare-metal install of CL 25410:

.
.
.
Extracting network-basic pack for version 25360

Extracting openssh-server pack for version 25110

Extracting os-core pack for version 25410
Warning: Linkname can't be converted from UTF-8 to current locale.
Warning: Linkname can't be converted from UTF-8 to current locale.
Warning: Linkname can't be converted from UTF-8 to current locale.

Extracting os-core-update pack for version 25370
.
.
.

To Reproduce
Burned clear-25410-installer.img to a USB stick and booted on a NUC. Selected US keyboard, configured proxy during setup, did a "manual" (rather than automatic) install, specified a different hostname (dbkinder-desk1), and added all the optional additional packages listed. Did not see any other errors/warnings (but I can't scroll the screen to see) -- that's a different problem.

Enable Mixer Integration

Currently, mixer uses an ister JSON template as part of the build process.
See clearlinux/mixer-tools#427

Need to also support clr-installer YAML files.

At least two weeks before enabling this change in Mixer, coordinate with the contact leads for the business units and COEs to ensure they know that this change is coming.
Stanley Phoong is a good first contact. @leopck

Graphical User Interface

Issue by mdhorn
Wednesday Feb 21, 2018 at 01:37 GMT


Implementation of the User Interface using a Graphical library.

The GUI and the planned TUI should allow of the collect of the exact same set of data items.
When possible in the design, the GUI and TUI should attempt to implement the same or similar screen types for data collection and follow a comparable workflow.

All public data from the Data Model (#4) should be settable in the GUI; though many items might only be accessible via an Advanced settings screen/menu. Several of the data items may be set by the Automatic Detection of Installation Environment (#5) in which case the use will not be prompted.

Estimated Effort: 8-10 person weeks

Support LVM

Issue by mdhorn
Friday Mar 02, 2018 at 22:18 GMT


Future Enhancements: LVM, Resizing partitions

color consistency

Describe the bug
We need to selected item color scheme to be consistent. One the main
screen, the selected table is blue with white letter, the selected list
item is white with blue letters, and the button, when selected, is cyan
with grey letters. The select item on scroll lists (like Language) have the
select item with a blue background and bold white text; the non-select
start as grey with black but then switch to purple with white letters.

To Reproduce
Navigate across the UI and check the color inconsistencies.

Expected behavior
Colors should be consistent across the UI.

Screenshots
N/A

Environment (please complete the following information):
N/A

Additional context
N/A

Improve Adduser Input data

Issue by mdhorn
Friday Jul 13, 2018 at 22:38 GMT


  • Request the user enter the password in two duplicate fields to ensure they know the password.
  • Allow the user to enter their proper name (aka comment field)
  • Allow the installer to set a password for the 'root' user

Text-based User Interface

Issue by mdhorn
Wednesday Feb 21, 2018 at 01:36 GMT


Implementation of the User Interface using a Text-base library.

The TUI and the planned GUI should allow of the collect of the exact same set of data items.
When possible in the design, the TUI and GUI should attempt to implement the same or similar screen types for data collection and follow a comparable workflow.

All public data from the Data Model (#4) should be settable in the TUI; though many items might only be accessible via an Advanced settings screen/menu. Several of the data items may be set by the Automatic Detection of Installation Environment (#5) in which case the use will not be prompted.

Estimated Effort: 2-3 man weeks

Internationalization of the GUI Strings

Issue by mdhorn
Friday Mar 02, 2018 at 23:53 GMT


Add support for internationalization of all strings in the GUI.

Languages to be supported is TBD.

Current belief is that the TIU does not need this support.

Support use of loopback devices for TUI install

I would like to be able to install into a pre-existing device file mapped via loopback (losetup).

Currently, the TUI crash is I have a device image file mapped, but not mounted.

/usr/bin/qemu-img create -f raw foobar.img 4G
sudo losetup --find --show foobar.img
sudo clr-installer

Select Configure Media
Program will crash:

panic: FreeSpace() must only be called with a disk block device

Error Trace:
storage.(*BlockDevice).FreeSpace()
     .gopath/src/github.com/clearlinux/storage.go:411
tui.(*DiskConfigPage).addDiskRow()
     .gopath/src/github.com/clearlinux/disk_config.go:463

Add option to install with LTS kernel

Clear has support for LTS kernels. Please add the ability to install Clear with the LTS kernel instead to switching after the install is complete.

Enable Public Key for new user accounts

All specifying a public ssh key when a new user account is created.

Instead of, or in addition to, a password for new users, allow for the use of a public key.

Update to Network Testing

Issue by mdhorn
Sunday Jul 08, 2018 at 01:09 GMT


  • Start test when entering Testing screen automatically
  • Test --> ReTest
  • If Network test passes, then remove the 'Cancel' button and default to selecting the 'Done' button.
  • If any network changes are made to the configuration, unmark Testing as completed (remove the '+')
    • Change the selected network device
    • Change of Proxy URL
    • Change of the Swupd Mirror URL

Create ClearLinux Live Image with Installer

Issue by mdhorn
Wednesday Feb 21, 2018 at 02:37 GMT


Create a combinational ClearLinux image, flashable to USB, which boots into a full ClearLinux "live" image which is usable for exploring ClearLinux. But have the installed present to the user can easily Install ClearLinux as well.

add sanity checks for mkfs options

Is your feature request related to a problem? Please describe.
No

Describe the solution you'd like
We're adding "options" support for target media configuration, with that the user may add extra arbitrary mkfs.* options, it would be nice to implement some sort of sanity checks before starting the install process and make sure the options are valid or potentially harmless.

Describe alternatives you've considered
Maybe implement some sort of loopback block device to only test the commands against this dummy image.

Additional context
N/A

"iconify" menu settings line

Describe the bug
Currently it's clipping if the settings line is too long, we should make it more friendly and "iconify" that line.

To Reproduce
N/A

Expected behavior
N/A

Screenshots
N/A

Environment (please complete the following information):
N/A

Additional context
N/A

Supports manual SOCKS and HTTP Proxies

Issue by mdhorn
Tuesday Apr 17, 2018 at 16:49 GMT


The current implementation only supports HTTPS manual proxy configuration.
We should also support both SOCKS and HTTP Proxy for future as some companies may not have HTTPS -- though it should be most common.

implement swupd real progress

Issue by dorileo
Wednesday Mar 28, 2018 at 19:20 GMT


Now we do a "loop based" progress for steps involving swupd commands, we need to:

  • Figure out how the "dots" output work for swupd bundle-add and fix commands;
    • Can we know how many dots swupd will print before we start installing?
  • Change the progress calls to use MultiStep

Support dual OS

Issue by dorileo
Tuesday Apr 10, 2018 at 20:02 GMT


Request to be able to install Clear Linux on a media where an existing OS already resides.

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.