GithubHelp home page GithubHelp logo

puavo-org / puavo-os Goto Github PK

View Code? Open in Web Editor NEW
10.0 10.0 7.0 99.16 MB

Puavo OS is an disk image based operating system that is built from Debian GNU/Linux and is specifically designed for learning.

Home Page: https://puavo.org

License: GNU General Public License v2.0

Makefile 4.74% Ruby 12.51% C 3.04% Shell 22.45% Python 16.62% Perl 0.19% HTML 0.57% JavaScript 31.48% CSS 1.99% Puppet 3.59% Roff 0.42% Lua 0.01% Tcl 2.36% Scheme 0.03%
debian image learning linux opinsys schools

puavo-os's People

Contributors

0is1 avatar asokero avatar basilstotz avatar bstotz avatar cjoohs avatar eluttine avatar esamattis avatar hannele avatar jarmopi avatar jpkorhonen avatar jplahti avatar juhaerk avatar lacostej avatar lamikae avatar mazhoon avatar miguit avatar niezbop avatar ptoivola avatar sarrchri avatar tuomasjjrasanen avatar vakvak0 avatar vmlintu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

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

puavo-os's Issues

Registration fails with jessie's libssl1.0.0

CSR sent by the client generates the following error at the CA server:

OpenSSL::X509::RequestError (nested asn1 error):
app/models/certificate.rb:12:in `initialize'
app/models/certificate.rb:12:in `new'
app/models/certificate.rb:12:in `sign_certificate'
app/controllers/certificates_controller.rb:68:in `block in create'
app/controllers/certificates_controller.rb:67:in `create'

And hence it fails to create and return a signed certificate.

If libssl1.0.0 is downgraded to 1.0.1e-2+deb7u20, registration works as expected.

Fix autopilot

The priority use for autopilot in production systems is to test the system functionality with smoketest to make sure that on network booting devices

  • pxe boot works normally
  • login works normally

Autopilot is launched from the bootserver and it creates a new virtual device, boots it with pxe and logs in. After login it reports about successful login, logs out and removes the created device and test user.

Autopilot can also be used for stress testing system or hardware.

puavo-rest-client fails with NoMethodError

/usr/lib/ruby/vendor_ruby/puavo/rest-client.rb:284:in `client': undefined method `with_headers' for #<HTTP::Client:0x00000002df2a58> (NoMethodError)
    from /usr/lib/ruby/vendor_ruby/puavo/rest-client.rb:237:in `do_request'
    from /usr/lib/ruby/vendor_ruby/puavo/rest-client.rb:219:in `block (3 levels) in <class:PuavoRestClient>'
    from /usr/lib/ruby/vendor_ruby/puavo/rest-client.rb:200:in `each'
    from /usr/lib/ruby/vendor_ruby/puavo/rest-client.rb:200:in `block (2 levels) in <class:PuavoRestClient>'
    from /usr/sbin/puavo-rest-client:177:in `puavo_rest_client_cli'
    from /usr/sbin/puavo-rest-client:193:in `<main>'

Lightdm greeter starts unreliably

In some cases, according to strace -p, /usr/bin/xinit seems to sleep forever after forking a child (child becomes defunct) and hence blocks /usr/lib/puavo-ltsp-client/xinitrc which is used as a display setup script for lightdm.

This bug was noticed on a relatively slow machine, Shuttle SFM27 (Intel Atom).

Select display manager

Previously we have used LightDM with Unity Greeter but as it is not available at Debian we might have to consider alternatives.

Current features at the login screen include:

  • ui element (currently at the panel) with options to 1. allow remote access, 2. clock, 3. shutdown (reboot, poweroff, suspend), 4. open virtual keyboard (needed for touch screen and virtual whiteboards), 5. choose network connection (wifi/ethernet), 6. view battery status (on laptops), choose keyboard layout (finnish, russian, dvorak, arabic...)
  • possibility to enter your username and password by typing
  • on personal devices/laptops possibility to select username from a list of people who have previously used the computer (owner of the computer as a default)
  • possibility to log in as a guest (this can be set on and off)
  • information about: device type, device hostname, system version

Login screen is an UI element that typically everyone see during the day. Therefore it should be considered that:

  • It would look aesthetically good
  • Would be a good place for sharing mutual information

Possible alternatives include

  • Lightdm with a different greeter (Webkit, razor-qt, kdm, gtk..)
  • GDM3
  • Packaging Unity greeter for Debian

Mediate configuration queries to a daemon if it is running

Currently, configuration database is only accessible by root and only for a one caller at a time. However, it should be possible to make multiple parameter queries simultaneously and also by desktop session users.

From an application programmer's point of view, everything should be hidden behind existing configuration interfaces (libpuavoconf, puavo/conf -Ruby module and puavo-conf command).

Puavo-wlanap fails to start hostapd

hostapd outputs the following error message:

iapp_init - bind[UDP]: Address already in use
iapp_deinit - setsockopt[UDP,IP_DEL_MEMBERSHIP]: Cannot assign requested address
IEEE 802.11F (IAPP) initialization failed.

Fatclient login fails

lightdm pam stack exits with the following error:

/usr/lib/puavo-ltsp-client/pam/open-session failed: exit code 98

This is because puavo-rest-client fails.

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.