Giter VIP home page Giter VIP logo

pythonos's Introduction

Hello, I'm Adam Furman, a graduate student and researcher.

Find out more on my website.

This GitHub contains some older personal projects, and newer code related to my research.

pythonos's People

Contributors

furmada 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pythonos's Issues

TODO?

Hey, is this project have any TODO's? Maybe that will be great to make a roadmap overtime.

TEST

TEST ONLY, to fix badge issue.

Integrated testing

Is it functional with Travis? Since the code doesn't include any tests at all.

not running on Raspberry pi with tft display.

The default PythonOS does not run on RaspberryPi 3 with 3.5 inch display.
I solved this by adding to pyos.py in the GUI object before
pygame.init()

if( _platform == "linux" or _platform == "linux2"):
            print "is Linux"
            os.putenv ("SDL_FBDEV" , "/dev/fb1")
            os.putenv("SDL_VIDEODRIVER", "fbcon")
            os.putenv("SDL_MOUSEDRV", "TSLIB") 
            os.putenv("SDL_MOUSEDEV", "/dev/input/touchscreen")
            print "init pygame"
            pygame.display.init()
            print "get screen size"
            size = (pygame.display.Info().current_w, pygame.display.Info().current_h)
            print "set screen mode"
            self.screen = pygame.display.set_mode(size, pygame.FULLSCREEN)
            print "Framebuffer size: %d x %d" % (size[0], size[1])

And you need the platform package

from sys import platform as _platform

Review icons

The Android-like app launcher is very nice, however, the icons don't look as beautiful as they could (sorry @furmada , but are they drawn with MS Paint?). I think of the following:

  • Consistent shape is already present and very good, currently rectangular. We should keep that.
  • Very important: remove the pixelized borders of objects in the icons.
  • Maybe be inspired by Material Design?
  • Complete redesign of About, Quit and Sleep
  • Clock is fine, however, Stopwatch and Timer are not unique enough
  • As already said, creating a new, smooth version of each icon would be cool, maybe even as svg and then exported to png.

I would really love to make UI more beautiful. If this is currently not very important on your TODO list, we could keep this for the future.

PMan won't update

doesn't work on any of the following systems I tried (Python OS latest):

  • Windows XP Dell Dimension 3100c
  • Linux Mint 18 Cinnamon
  • Windows 8.1
  • Windows 10

good job on the project btw.

SDL 1.2.15

I'm trying to get PythonOS to install on a Nanopi with a buydisplay lcd. The screen starts up and I get cursor movement but the cursor is stuck in the top right corner.

I did some reading around and it seems pygame has an issue with SDL > 1.2.15-5. I wanted to find out if anyone else has run into this issue and if so was a downgrade what fixed it or a jump to a version of SDL 2?

THanks! Great application here!

Make PythonOS ready for Python 3

I really like this project, however, it's still Python 2 only. It would be nice to see it run under e.g. Python 2.7 - 3.x (or even 2.6 to the newest Python).

To be honest, I don't know how hard this would be, I guess simply replacing all the prints is not enough.

I guess this is important to have a stable codebase in the future, and would possibly bring some (small) speed improvements too.

More modular PythonOS

Hi,
first thing to say I like the idea of PythonOS very much.
I thought about adding some apps for my radio project. Then I had the idea to add a gui component for it and was a bit frighten of that monolithic 2k loc block. So I started to break it down in a more modular way.
a first draft can be found here: https://github.com/NeoBelerophon/PythonOS/tree/WIP_refactoring
I would like to here what you think about it. IMHO this also could make portion to Python 3 easier and lower the entry barrier for other developers.

BR
Neo

Project license

Which license this project will be based on? GPL? BSD? MIT? etc?

Automated unit test for python os on github

Hey @furmada , did you ever tried travis.ci for automatic test for this repo? It seems gonna save a lot of time finding Python specific bugs with the testings. You also can customize the testing to suit this project, and maybe set a test rules for any other contributors in the future for this project.

Thanks.

Maximum recursion depth exeption

First of all: great job. I've not seen such an awesome project. I did not walked trough the full sources, but this has been a lot of work I think.

While looking over the apps and all the functionality, I got the following traceback. Sorry, don't know which app I had open :(

Some infinite recursion which is stopped when the default recursion depth is reached... Hopefully I can contribute something to resolve this issue.

EDIT: I ran the code under Ubuntu 16.04 LTS with Python 2.7.12 and Pygame 1.9.1release.

Python OS 6 Error Report
TIME: 2016-09-25 14:58:55.693280

Open Applications: ['image-viewer', 'task-manager', 'about', 'home']
Message: Event execution error
Additional Data:
Click event: <__main__.IntermediateUpdateEvent object at 0x7f132a8816d0>

Traceback:
Traceback (most recent call last):
  File "pyos.py", line 2648, in main
    clickedChild.onIntermediateUpdate()
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 553, in onIntermediateUpdate
    self.internalClickOverrides["onIntermediateUpdate"][0](*self.internalClickOverrides["onIntermediateUpdate"][1])
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1368, in dragScroll
    self.scrollContainer.scroll(ydist)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1396, in scroll
    self.scrollTo(-self.maxOffset + self.height)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1408, in scrollTo
    self.scroll(-self.offset)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1400, in scroll
    self.scrollTo(self.minOffset)


...

Several thousand lines of the above...
...

  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1400, in scroll
    self.scrollTo(self.minOffset)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1408, in scrollTo
    self.scroll(-self.offset)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1400, in scroll
    self.scrollTo(self.minOffset)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1408, in scrollTo
    self.scroll(-self.offset)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1400, in scroll
    self.scrollTo(self.minOffset)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1408, in scrollTo
    self.scroll(-self.offset)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1400, in scroll
    self.scrollTo(self.minOffset)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1408, in scrollTo
    self.scroll(-self.offset)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1400, in scroll
    self.scrollTo(self.minOffset)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1408, in scrollTo
    self.scroll(-self.offset)
  File "/home/linus/Schreibtisch/PyOS 6/pyos.py", line 1400, in scroll
    self.scrollTo(self.minOffset)
RuntimeError: maximum recursion depth exceeded

User-specific path in gallery.ds

Sorry for opening so much issues, but I just found, that in the file res/gallery.ds you have this:

{"dsApp": "gallery", "path": "C:/Users/Adam/Documents/eclipsepy/pyos6/res/icons"}

Is this just fine or will it break things?

Quick start problem

Hi, I tried the following quick start tutorial in the README.md. After creating the app.json and init.py with its content, I don't know where to go from there.

Now, enter the About app and long press the "Start State Shell" button to launch the Debug App Bind feature. Open your app's folder, then press the green dot button to select it and associate the app with the system.

I don't know how to go to the 'Start State Shell' and even install 'pyos' properly on my system. Mine is not raspberry. I'm running Ubuntu 16.04. (32 bit)

I tried running pyos.py in the root of directory, and run fine, but it's just print on the window screen, and nothing else. This is what I see -
tsjtr5p

How to actually use this program? Going to wiki only shows you the API documentation.

Thanks for your advance.

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.