Code Monkey home page Code Monkey logo

Comments (24)

osmarks avatar osmarks commented on May 19, 2024 1

Are there plans to update this for OS.js 3?

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

After looking at the GTK sources this seems to be way easier then first expected. I will cointinue experimenting with this, including writing an entirely new library that is modular and customizable (the sources from GTK is quite ugly)

from os.js.

emersion avatar emersion commented on May 19, 2024

I'm also very interested in a well-written Broadway library. The only problem is that the spec is changing with each GTK release, so if we create a library it won't be compatible with older/newer versions of Broadway.

I would like to help, would it be a good idea to create a github repo for this library?

Thanks :-)

from os.js.

emersion avatar emersion commented on May 19, 2024

(If you need docs about Broadway, there is a wiki page about it in Symbiose: https://github.com/symbiose/symbiose/wiki/Broadway)

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

@emersion I'm planning to make something very portable and easy to update. From the looks of it is very simple and most of the changes could be an automated process (parsing .h files)

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

@emersion I will have something to show off later today :)

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

@emersion Created first prototype of the new library. See the link in main description :)
Started on Event handling now. After that it's just a matter of cleaning up and making it as portable as possible

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

@emersion Btw. I was looking at the history of broadway.js and it seems that it does not change that often (if ever), so the protocol will most likely not receive any huge changes :)

from os.js.

emersion avatar emersion commented on May 19, 2024

Seems good to me :-)

I was wondering, what about the server-side code? The user will be able to launch apps remotely? I already tried to emulate a GTK environment

from os.js.

emersion avatar emersion commented on May 19, 2024

But it does not work well.

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

@emersion I have done something like this before using PAM logins and a simple messaging system. Btw I have made some great progress on the implementation. Just pushed a few nice updates :D

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

@emersion I have now implemented a spawner for processes... not finished mind you, and not pretty at the moment, but works :) Code is in Broadway/vendor
Preview: https://www.youtube.com/watch?v=o0QLC9Sx-BA

from os.js.

davelab6 avatar davelab6 commented on May 19, 2024

I'm curious, what is the latest status of this?

@andersevenrud this project is really super great :D

@emersion awesome work on Symbiose :D

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

@davelab6 It's currently working of the "old" GTK implementation, but should work just fine. I am in the middle of writing a new encoder to support latest features!

from os.js.

RyanRiffle avatar RyanRiffle commented on May 19, 2024

@andersevenrud I haven't looked far into but maybe you could provide some insight about the intended security. When Login/Logout is implemented how do you see the security working? Do you plan on OS.js running as a server for all users and dishing out an forked process of itself setuid() and setguid() of the user? Or do you plan on it being a single user environment and changing the owner of the process to that user alone. I would like to assist on the Login/Logout part of the desktop.

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

@RyanRiffle The plan (I have not thought to much about this myself) was to hook into the PAM authentication system to spawn a X-server and not a OS.js server for the requested user. Right now it just attaches to the specified server which has to be started manually (or just :0 which is the default one). I'll get back to you with some more in-depth info when I'm home again (holiday atm). Did this help ? :)

from os.js.

RyanRiffle avatar RyanRiffle commented on May 19, 2024

That helps. I figured it was being run with startx ./whatever.sh -- :1. Got to keep users in their place and keep them from accessing files they don't have permissions to.

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

@RyanRiffle, yeah, that's pretty much how it works now. So just need a
spawner of sorts to automate that process.

And when it comes to permissions, that's comes entirely down to how both
the system and user is configured :)

On Sat, Aug 6, 2016 at 1:21 AM, Ryan Riffle [email protected]
wrote:

That helps. I figured it was being run with startx ./whatever.sh -- :1.
Got to keep users in their place and keep them from accessing files they
don't have permissions to.


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#29 (comment), or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAJ3DAnBZvwwccJkEbuHwxu6I8s1GZlhks5qc8WDgaJpZM4C4WQn
.

Anders F. Evenrud
Software Developer

Blog: http://tinyurl.com/cjfrfx8

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

I've pused an update that adds support for Broadway library version 2.0. Along with these changes:

  • Now runs as a "service" on the OS.js server (no manual launching required)
  • Now has connection settings from configuration files
  • Supports maximize/restore of windows
  • Much better input handling
  • Performance improvements and bugfixes

https://os.js.org/manual/client/broadway/

from os.js.

davelab6 avatar davelab6 commented on May 19, 2024

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

Firefox crashes, sadly (worked in some other version), and there's not many [full] Gtk 3.0+ applications yet included in ex. Ubuntu. I'm going to make a curated list of supported apps and see if I find a way to run apps that crash.

Everything seems to work fine with apps that are fully GTK3 compatible. Example:

https://lh5.googleusercontent.com/WjOID6FcjbjqBtB5byiR0OLJN6-_DEk8LjOmR-vFlrVOGw54BjN97BiocN968lj6LdKis3LqPMfVTJ8=w1920-h1110-rw

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

This is no longer a thing, sadly. But theres awesome news: Xpra replaces this entirely (and is actually based on Broadway).

A fully working repository for this is here: https://github.com/os-js/osjs-xpra

Video: https://www.youtube.com/watch?v=c0safRR0ldM&list=PL74DE0E481419C259&index=16

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

@osmarks AFAIK Broadway is no longer in development (the actual protocol etc.), however, I'm working on an Xpra client which does the same thing 😄

from os.js.

andersevenrud avatar andersevenrud commented on May 19, 2024

@osmarks I'm actually working on rewriting some of the parts to WebAssembly (using Rust) for waaaay better performance.

from os.js.

Related Issues (20)

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.