{"id":20081324,"url":"https://github.com/kedder/openvario-shell","last_synced_at":"2025-05-06T00:31:12.889Z","repository":{"id":38323921,"uuid":"255402897","full_name":"kedder/openvario-shell","owner":"kedder","description":"Main Menu Shell for Openvario","archived":false,"fork":false,"pushed_at":"2025-04-26T03:54:03.000Z","size":2226,"stargazers_count":13,"open_issues_count":13,"forks_count":9,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-26T20:06:31.806Z","etag":null,"topics":["openvario","soaring","tui","urwid"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kedder.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2020-04-13T17:55:28.000Z","updated_at":"2025-03-01T09:01:24.000Z","dependencies_parsed_at":"2023-02-10T20:01:33.939Z","dependency_job_id":"f8308c0f-a684-4cb7-a090-ebee8c6f8f33","html_url":"https://github.com/kedder/openvario-shell","commit_stats":{"total_commits":498,"total_committers":5,"mean_commits":99.6,"dds":"0.20481927710843373","last_synced_commit":"5e7730a076fcedd6b7a8c10f70610732f5f02ab8"},"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kedder%2Fopenvario-shell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kedder%2Fopenvario-shell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kedder%2Fopenvario-shell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kedder%2Fopenvario-shell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kedder","download_url":"https://codeload.github.com/kedder/openvario-shell/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252598258,"owners_count":21774227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["openvario","soaring","tui","urwid"],"created_at":"2024-11-13T15:38:36.272Z","updated_at":"2025-05-06T00:31:12.216Z","avatar_url":"https://github.com/kedder.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Main Menu Shell for Openvario\n\n[![Build Status](https://circleci.com/gh/kedder/openvario-shell.svg?style=svg)](https://app.circleci.com/pipelines/github/kedder/openvario-shell/)\n[![Coverage Status](https://coveralls.io/repos/github/kedder/openvario-shell/badge.svg)](https://coveralls.io/github/kedder/openvario-shell)\n[![Checked with mypy](http://www.mypy-lang.org/static/mypy_badge.svg)](http://mypy-lang.org/)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Maintainability](https://api.codeclimate.com/v1/badges/9e92cde06a8859dd1220/maintainability)](https://codeclimate.com/github/kedder/openvario-shell/maintainability)\n\nThis is a replacement for stock main menu shipped with official\n[Openvario](https://openvario.org/) images. It is implemented in Python and\noffers more extensibility and richer user interface than stock shell\nscript-based one.\n\nThe goal of this project is to provide a user interface for managing Openvario\ndevice that is:\n\n* **User friendly** -- responsive, can be operated with remote stick or\n  minimal input controls.\n* **Feature rich**  -- allow to manage all aspects of device, including\n  connected devices, files, etc.\n* **Extensible** -- allow to integrate third-party applications.\n* **Simple to develop and test** -- written in Python, can be tested without\n  Openvario device at hand.\n\n## Features\n\n![Feature Demo](screenshots/demo.gif)\n\n* Run XCSoar, optionally automatically after configurable timeout\n* Pick preferred XCSoar language\n* Chose screen orientation, screen brightness, font size and more\n* Calibrate touchscreen and sensors\n* Download flight logs to USB flash drive with responsive UI\n* Copy files to and from USB flash drive, backup and restore configuration\n* Synchronize system time with GPS time (when GPS receiver is connected)\n* Integrate with third party apps (like [Competition Manager](https://github.com/kedder/openvario-compman))\n\n## Installation\n\nThe easiest way to install is using `opkg` package manager on\ninternet-connected Openvario device.\n\n```sh\nwget https://raw.githubusercontent.com/kedder/openvario-shell/master/scripts/openvario-shell-install.sh -O - | sh\n```\n\nAfter executing this command, `ovshell` command should be available. It will\nstart automatically next time Openvario boots up.\n\nIn case you didn't like it and would like to return to stock Openvario menu,\nrun this command:\n\n```sh\nwget https://raw.githubusercontent.com/kedder/openvario-shell/master/scripts/openvario-shell-uninstall.sh -O - | sh\n```\n\n## Development\n\nIt is not required to own or have access to Openvario device in order to\ndevelop `ovshell`. The only requirements are Python 3.7 or higher and terminal\nemulator, readily available on MacOS or Linux operating systems. There are lots\nof free options for Windows as well.\n\n### Setting up the development environment\n\n`ovshell` uses `pipenv` for managing dependencies and dev environment. If you\ndon't have it yet, install with:\n\n```sh\npip install pipenv  # or pip3 if you don't have \"pip\"\n```\n\nAfter checking out the sources, `cd` to `openvario-shell` directory and run:\n\n```sh\npipenv shell\npipenv sync\n```\n\nAfter that, your development environment is ready, you should be able to run\nthe app:\n\n```sh\novshell\n```\n\nIt is possible to adjust few options by providing them in `.env` file, located\nin project directory. You can copy the sample file `sample.env` to `.env` and\nadjust values there.\n\n### Development tools\n\n`ovshell` uses various tools to check the code quality. They are generally\navailable through `make` program. Most useful are these:\n\n* `make test` - runs the test suite\n* `make coverage` - runs the test suite and display test coverage statistics\n* `make mypy` - checks the sources with static type checker\n* `make black` - reformats the source code to match the code style\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkedder%2Fopenvario-shell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkedder%2Fopenvario-shell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkedder%2Fopenvario-shell/lists"}