fabricedesre / servonk Goto Github PK
View Code? Open in Web Editor NEWServo on Gonk
License: Mozilla Public License 2.0
Servo on Gonk
License: Mozilla Public License 2.0
$ ./servonk run glutin
assertion failed: mach_sys::mach_port_mod_refs(mach_task_self(), self.port,
MACH_PORT_RIGHT_SEND, 1) == KERN_SUCCESS (thread Constellation, at /Users/pancake/.cargo/registry/src/github.com-1ecc6299db9ec823/ipc-channel-0.10.0/src/platform/macos/mod.rs:336)
ERROR 2018-04-18T08:10:50Z: servo: assertion failed: mach_sys::mach_port_mod_refs(mach_task_self(), self.port,
MACH_PORT_RIGHT_SEND, 1) == KERN_SUCCESS
called `Result::unwrap()` on an `Err` value: Io(Custom { kind: ConnectionReset, error: StringError("No senders exist for this port.") }) (thread StorageManager, at libcore/result.rs:945)
ERROR 2018-04-18T08:10:52Z: servo: called `Result::unwrap()` on an `Err` value: Io(Custom { kind: ConnectionReset, error: StringError("No senders exist for this port.") })
It is currently forced to stay on 0.3.7 and backtrace-sys on 0.1.16 to avoid a compilation error with backtrace-sys 0.1.19. This will be hitting us at each Servo update.
Can you detail the part of the readme where you write:
Configure the Gonk build by setting the GONK_DIR environment variable to the path of your b2g repository,
As: where to set that GONK_DIR and where to get the b2g repo?
Thanks!
Similar with Firefox OS 2.1, the status bar and the navigation bar should be able to change color based on this setting.
Reference:
https://developers.google.com/web/fundamentals/design-and-ux/browser-customization/
These are Servo issues that are blocking servonk one way or the other from being awesome:
Idle
state is not always reached at the end of css transitions. Many animations are disabled because of that bug.When trying to run release 0.1-alpha in Ubuntu for Windows using VcXsrv it returned this error:
Server failed to accept.: Io(Os { code: 22, kind: InvalidInput, message: "Invalid argument" }) (thread Constellation, at libcore/result.rs:945)
ERROR 2018-05-10T13:43:28Z: servo: Server failed to accept.: Io(Os { code: 22, kind: InvalidInput, message: "Invalid argument" })
I believe it may be related to graphics since the Windows Subsystem for Linux doesn't formally support graphical apps, hence why I needed to use VcXsrv as well.
Since this platform is not an intended target for Servonk I expect this issue to be given a low priority.
Note that in addition to the instructions in the reader I set up the environment as:
export DISPLAY=:0 export XDG_RUNTIME_DIR=/tmp
We need dialogs for the alert() / confirm() / prompt() calls, but they could be useful also for internal usage.
Ideally we need:
We need to check if such builds can be done quickly enough to use something like Travis CI.
Hello everyone,
As described in the new page on target devices and platforms in the docs folder, there are many possible targets. But who's working on any of them right now?
More importantly, is anyone working on the intended targets?
Cheers :)
The code for the keyboard is included in the repo frontend code but the keyboard doesn't actually appear on screen when a text input box is selected.
Is this working as intended? Is this behaviour expected because that keyboard code isn't yet included in the build?
We need them...
I have been thinking of a very simple OS that runs a Servo process for each desktop element (GUI, file system manager, terminal, Office app etc) optimized with WebAssembly for both mobile and desktop. With a very simple microkernel like Redox.
Does this make sense? Is this also feasible?
Hi Team,
I had flashed the Nexus 5 device. However when I run the command ./servonk run gonk I'm getting the below error. Also here is my git log:
arun@devilbox ~/Documents/servonk $ git log | head
commit a7082e6c7294109d002c663db1208727ad6653fa
Merge: 9350561 3ea68e2
Author: arunkumar413 <[email protected]>
Date: Tue May 22 20:22:00 2018 +0530
latest update Merge branch 'master' of https://github.com/fabricedesre/servonk into arun
commit 3ea68e2c38a802f584efbcc738796093d89dcc08
Author: Fabrice Desré <[email protected]>
Date: Mon May 21 15:01:39 2018 -0700
arun@devilbox ~/Documents/servonk $
arun@devilbox ~/Documents/servonk $ ./servonk run gonk
Options configured as None Some(1.0) false
thread 'ResourceManager' panicked at 'Can't read file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', libcore/result.rs:945:5
thread 'main' panicked at 'Can't read file: Os { code: 2, kind: NotFound, message: "No such file or directory" }', libcore/result.rs:945:5
stack backtrace:
0: <unknown>
1: <unknown>
2: <unknown>
3: <unknown>
4: <unknown>
5: <unknown>
6: <unknown>
7: <unknown>
8: <unknown>
9: <unknown>
10: <unknown>
11: <unknown>
12: <unknown>
13: <unknown>
14: <unknown>
stack backtrace:
0: <unknown>
1: <unknown>
2: <unknown>
3: <unknown>
4: <unknown>
5: <unknown>
6: <unknown>
7: <unknown>
8: <unknown>
9: <unknown>
10: <unknown>
11: <unknown>
12: <unknown>
13: <unknown>
14: <unknown>
15: __libc_init
thread 'StorageManager' panicked at 'called `Result::unwrap()` on an `Err` value: Io(Custom { kind: ConnectionReset, error: StringError("MPSC channel sender closed") })', libcore/result.rs:945:5
stack backtrace:
0: <unknown>
1: <unknown>
2: <unknown>
3: <unknown>
4: <unknown>
5: <unknown>
6: <unknown>
7: <unknown>
8: <unknown>
9: <unknown>
10: <unknown>
11: <unknown>
12: <unknown>
arun@devilbox ~/Documents/servonk $ ./servonk run gonk
Hi Fabrice,
Since you said you would like to find a "better" name for the project I thought we could put suggestions here instead of telegram.
My suggestions are:
Serval, which is a wild African cat which should be easy to stylise for a logo, eg https://www.qwant.com/?q=serval%20cartoon&t=images
Anancy, spider character from African/Caribbean folklore. Spiders are to do with webs...
Nervous Crow, very tenuous name derived from an anagram of Servonk and a character from the same programme as Servo
Minya, son of Godzilla
This is a really, really exciting concept. It very much opens the door for some of the design changes
identified in Ben Francis' paper on Firefox OS's history. Being relatively karma-less, I can't create
/r/Servonk, but it seems like it would be a useful place to communicate?
To recap some discussion in telegram:
Currently Servonk is targetting Gonk from B2G derived from Android Lollipop. There's also the desktop build with Glutin. As far as I understand it the Gonk port is more for convenience of familiarity and available devices for potential contributors.
Long term there is a desire not to support old hardware and to make Servonk usable on new devices. Options for this are:
Other options:
Would it be easier just to target Halium and save porting effort? Aries does have a port, but I don't know the current work status.
GNU/Linux options:
Librem 5 is already a stated target, is working on the desktop build enough for this?
postmarketOS is another option but I don't know how much different it will be to target it's Alpine Linux base vs the Debian base of Librem 5 PureOS.
Both these should also make it easier to port to Halium, because they are closer to each other than they are to AOSP.
In all cases one still needs to choose which devices to target. Is it actually easier to choose devices to support first, then choose the best porting option?
What are the minimum system requirements of Servo? How low a spec device can be supported? Is it worth it? Who would use it? Will they contribute to Servonk front end development? At this stage porting to a new device/platform is probably only worth it if it increases contributions to the servo and front end parts of Servonk. Longer term the aim would be to make Servonk available for more general use.
Finally, what about Gonk-KK based devices? What needs to be done to port Servonk to Gonk-KK? That would make the flame, open c and many others possible - even the FX0 using the work by Cutol on Reddit! This may get more previous FirefoxOS/B2G users interested and potentially contributing to the servo and frontend stuff. Most of these people will have moved on to more modern devices now anyway, so once they have success on their old FirefoxOS phones they will probably want to try on their newer, faster phones instead. So "support" for Gonk kk probably won't be needed for long.
In summary, I don't think it's easy to decide. Whichever platforms(s) are chosen there should be a ready to go set of devices which can be targeted (see the lists of supported devices in all the links above), but it's not clear how to choose the platform.
To try and limit the available choices, here are the devices which I think meet the criteria of Project Treble enabled, with an unlocked bootloader, derived from LineageOS 15.1 devices list and which ones have Project Treble :
It aims to revive b2g by providing a modern UI and back-porting KaiOS changes.
But getting it to work with Servo would probably be a major improvement.
Hi Fabrice,
It's not possible to do pull requests on a GitHub wiki so how would you like us to contribute to documentation? Create a wiki folder within the code and manually create markdown files? Html?
What about explanation of how Servonk works? Control flow, architecture etc? Will this be in the code comments? Should it be in the wiki? Do you eventually foresee automated documentation?
Cheers
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.