SlideShare a Scribd company logo
1 of 13
OpenSolaris Text-Based Installer Danny Pearson, Mark Godwin,  Ryan Holden, Thea Gab
Goal Create a text-based installer for Sun Microsystems’s operating system, OpenSolaris.
Why? User’s graphics cards may not be compatible with GNOME. Systems may only have the capability to display a terminal. Remote installation.
Demo Please direct your attention to the other screen.
Plans Create a text-based installer for x86 architecture. Mirror GUI installer’s functionality. Create the installer on SPARC architecture.
Lessons Learned Develop a good working relationship with your team, and always respect their ideas.  Collaborate with as many individuals as you can to gain new perspectives on your design.  Be objective to the decisions you make, and willing to move in a new direction when necessary.
Final Product Written in C, uses a NCURSES Interface. Execution on startup achieved by Service Management Facility (SMF). Installation performed by an internal Sun library called ‘liborchestrator’.
NCURSES C library offering terminal manipulation. Standard library used for text based applications.
menu screen.c welcome.c form screen.c disk.c textscreen.c main.c installation screen.c progress screen.c reader.c Installation complete.c NCURSES Interaction Text files install.txt users.txt welcome.txt Liborchestrator Interaction
SMF Defines a dependency list of processes to execute on startup. GRUB svc.startd init Text-installer
Limitations Current text-based installer only supports an initial install. (No upgrade functionality) Current text-based installer is only localized in the English language. Current text-based installer does not restrict password characters using a commonly accepted method.
Future Work Resolving items on the known bugs list. Creating help files specific to each of the screens throughout the installation sequence. Porting the text-based installer to the SPARC architecture. Providing a purely text-based, NCURSES free installer, for highly limited systems.
Questions, Discussion If you have any questions, please feel free to ask them now.

More Related Content

Similar to Creating a Text-Based Installer

Node.js.pdf
Node.js.pdfNode.js.pdf
Node.js.pdf
gulfam ali
 
Node.js Web Development .pdf
Node.js Web Development .pdfNode.js Web Development .pdf
Node.js Web Development .pdf
Abanti Aazmin
 
Hudson@java one2010
Hudson@java one2010Hudson@java one2010
Hudson@java one2010
InfraDNA
 
Shell vs. Java: Overcoming the Challenges of Shell Scripting for UNIX Install...
Shell vs. Java: Overcoming the Challenges of Shell Scripting for UNIX Install...Shell vs. Java: Overcoming the Challenges of Shell Scripting for UNIX Install...
Shell vs. Java: Overcoming the Challenges of Shell Scripting for UNIX Install...
Flexera
 
Jeff Olson\'s Resume
Jeff Olson\'s ResumeJeff Olson\'s Resume
Jeff Olson\'s Resume
Jeff Olson
 

Similar to Creating a Text-Based Installer (20)

How to Install Node.js and NPM on Windows and Mac?
How to Install Node.js and NPM on Windows and Mac?How to Install Node.js and NPM on Windows and Mac?
How to Install Node.js and NPM on Windows and Mac?
 
Why You Should Use MERN Stack for Startup Apps?
Why You Should Use MERN Stack for Startup Apps?Why You Should Use MERN Stack for Startup Apps?
Why You Should Use MERN Stack for Startup Apps?
 
Oss the freedom dpm 2018
Oss the freedom dpm 2018Oss the freedom dpm 2018
Oss the freedom dpm 2018
 
Node.js.pdf
Node.js.pdfNode.js.pdf
Node.js.pdf
 
8 good reasons to learn docker
8 good reasons to learn docker8 good reasons to learn docker
8 good reasons to learn docker
 
PHP vs .NET vs JAVA : The Right Tech for Your Next Big Project
PHP vs .NET vs JAVA : The Right Tech for Your Next Big ProjectPHP vs .NET vs JAVA : The Right Tech for Your Next Big Project
PHP vs .NET vs JAVA : The Right Tech for Your Next Big Project
 
Node.js Web Development .pdf
Node.js Web Development .pdfNode.js Web Development .pdf
Node.js Web Development .pdf
 
Development of Multiplatform CMS System with Zend Framework
Development of Multiplatform CMS System with Zend FrameworkDevelopment of Multiplatform CMS System with Zend Framework
Development of Multiplatform CMS System with Zend Framework
 
Building cross platform web apps
Building cross platform web appsBuilding cross platform web apps
Building cross platform web apps
 
Top frontend web development tools
Top frontend web development toolsTop frontend web development tools
Top frontend web development tools
 
Demo Lecture 01 Notes.pptx by Sabki Kaksha
Demo Lecture 01 Notes.pptx by Sabki KakshaDemo Lecture 01 Notes.pptx by Sabki Kaksha
Demo Lecture 01 Notes.pptx by Sabki Kaksha
 
Demo Lecture 01 Notes paid , course notes
Demo Lecture 01 Notes paid , course notesDemo Lecture 01 Notes paid , course notes
Demo Lecture 01 Notes paid , course notes
 
Hudson@java one2010
Hudson@java one2010Hudson@java one2010
Hudson@java one2010
 
Shell vs. Java: Overcoming the Challenges of Shell Scripting for UNIX Install...
Shell vs. Java: Overcoming the Challenges of Shell Scripting for UNIX Install...Shell vs. Java: Overcoming the Challenges of Shell Scripting for UNIX Install...
Shell vs. Java: Overcoming the Challenges of Shell Scripting for UNIX Install...
 
INTRODUCTION TO FLUTTER BASICS.pptx
INTRODUCTION TO FLUTTER BASICS.pptxINTRODUCTION TO FLUTTER BASICS.pptx
INTRODUCTION TO FLUTTER BASICS.pptx
 
1061 (m2)
1061 (m2)1061 (m2)
1061 (m2)
 
Java Intro
Java IntroJava Intro
Java Intro
 
Node js Development Company - Aparajayah
Node js Development Company - AparajayahNode js Development Company - Aparajayah
Node js Development Company - Aparajayah
 
Node js (runtime environment + js library) platform
Node js (runtime environment + js library) platformNode js (runtime environment + js library) platform
Node js (runtime environment + js library) platform
 
Jeff Olson\'s Resume
Jeff Olson\'s ResumeJeff Olson\'s Resume
Jeff Olson\'s Resume
 

Creating a Text-Based Installer

  • 1. OpenSolaris Text-Based Installer Danny Pearson, Mark Godwin, Ryan Holden, Thea Gab
  • 2. Goal Create a text-based installer for Sun Microsystems’s operating system, OpenSolaris.
  • 3. Why? User’s graphics cards may not be compatible with GNOME. Systems may only have the capability to display a terminal. Remote installation.
  • 4. Demo Please direct your attention to the other screen.
  • 5. Plans Create a text-based installer for x86 architecture. Mirror GUI installer’s functionality. Create the installer on SPARC architecture.
  • 6. Lessons Learned Develop a good working relationship with your team, and always respect their ideas. Collaborate with as many individuals as you can to gain new perspectives on your design.  Be objective to the decisions you make, and willing to move in a new direction when necessary.
  • 7. Final Product Written in C, uses a NCURSES Interface. Execution on startup achieved by Service Management Facility (SMF). Installation performed by an internal Sun library called ‘liborchestrator’.
  • 8. NCURSES C library offering terminal manipulation. Standard library used for text based applications.
  • 9. menu screen.c welcome.c form screen.c disk.c textscreen.c main.c installation screen.c progress screen.c reader.c Installation complete.c NCURSES Interaction Text files install.txt users.txt welcome.txt Liborchestrator Interaction
  • 10. SMF Defines a dependency list of processes to execute on startup. GRUB svc.startd init Text-installer
  • 11. Limitations Current text-based installer only supports an initial install. (No upgrade functionality) Current text-based installer is only localized in the English language. Current text-based installer does not restrict password characters using a commonly accepted method.
  • 12. Future Work Resolving items on the known bugs list. Creating help files specific to each of the screens throughout the installation sequence. Porting the text-based installer to the SPARC architecture. Providing a purely text-based, NCURSES free installer, for highly limited systems.
  • 13. Questions, Discussion If you have any questions, please feel free to ask them now.

Editor's Notes

  1. How many of you guys have used OpenSolaris? It’s similar to ubuntu, from the front at least.
  2. We’ll talk about GNOME in just a bit, it’s what displays the user interface for the operating system.
  3. Modular code design, Interface separate from interaction code.