Announcing PonyOS 3.0: BFG Edition!

This forums is for OS project announcements including project openings, new releases, update notices, test requests, and job openings (both paying and volunteer).
Post Reply
klange
Member
Member
Posts: 679
Joined: Wed Mar 30, 2011 12:31 am
Libera.chat IRC: klange
Discord: klange

Announcing PonyOS 3.0: BFG Edition!

Post by klange »

Image

I am very happy to announce the release of PonyOS 3.0: BFG Edition!

Image

This release of PonyOS includes many great improvements over 2.0:
  • New window compositor - Yutani
  • New VGA text-mode terminal
  • Several bug fixes and security patches
  • New panel with menu and window list
  • Python 2.7
  • Doom (shareware release)
As usual, PonyOS 3.0 is available as a raw disk image that you can use with qemu!

Image

Image
Last edited by klange on Wed Apr 01, 2015 3:09 pm, edited 1 time in total.
User avatar
Bender
Member
Member
Posts: 449
Joined: Wed Aug 21, 2013 3:53 am
Libera.chat IRC: bender|
Location: Asia, Singapore

Re: Announcing PonyOS 3.0: BFG Edition!

Post by Bender »

This was supposed to come out on Apr 1. I think you messed up the dates.

:)
"In a time of universal deceit - telling the truth is a revolutionary act." -- George Orwell
(R3X Runtime VM)(CHIP8 Interpreter OS)
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: Announcing PonyOS 3.0: BFG Edition!

Post by Combuster »

Australia. Shh... they're sleeping.
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
User avatar
sortie
Member
Member
Posts: 931
Joined: Wed Mar 21, 2012 3:01 pm
Libera.chat IRC: sortie

Re: Announcing PonyOS 3.0: BFG Edition!

Post by sortie »

Excellent fun.

Thanks for taking the time to satisfy our values through friendship and ponies.

It's good to see the underlying ToAru base gradually improve and it shows off.

I gave the image a try and noted down any issues I found. It's generally pretty good and pretty fun. Doom runs well and it was easy to get PonyOS working in qemu. The desktop environment isn't fully smooth (a little sluggish) to the standard I would hold a Linux distribution to, but having encountered GUI performance issues of my own OS, I can say that the GUI runs very well in qemu by hobbyist standards. The system locked up a few times, probably related to process termination, and how to exit some programs was non-obvious. There's some usability issues that could make it even nicer to use if they were solved. The system has an excellent look and clearly some effort went into designing it. Looks deceive a bit, stuff that looks functional might not truly be, such as the TTK demo where there are buttons that look usable but they do nothing when you click them. There's a good deal of test programs, but some of them aren't very interesting or are confusing, or doesn't consistently follow the windowing environment rules. For a non-technical person, there's only a small amount of stuff to do before you have to use the terminal environment. It could be nice with a list of major programs available in it. Overall, it's the best PonyOS release so far and there certainly was ponies. The branding was superficial only though, it would be nice to see it also in the terminal environment and in the included GUI programs, too.

Some remarks of various issues I experienced:

The release is accompanied by a MD5 hash. MD5 is broken and is in the progress of being aggressively cryptographically deprecated. You should use a SHA256 checksum or something better instead. Even if that checksum itself isn't verified (and thus isn't really secure), it doesn't propagate that MD5 is a reasonable use.

Booting the system, I see some debug gradients. For a less technical user that might be confusing. To me it just feels unnecessary and violates my aesthetics. It's a moment where the glossy illusion breaks down.

Documenting the default user credentials in the website documentation is bad experience since there's actually no security (as the credentials are well known), but it's entirely possible that the user missed them. That happened to me the first time I used ToAruOS. root/toor and local/local are not that obvious default credentials. I think a better pattern would be a first time boot feature, at least in releases like this. On the first boot, the user is asked to create a personal account and select a password. You could have a ‘Live Environment/Guest’ bypass feature so you can get a default account and desktop quickly without work from the user / developer.

The login screen looks nice, but has some usability issues regarding the textboxes. There's no clue where the textbox entry cursor is in the textboxes themselves, I mean, that conventional vertical bar. It would be nice to have one. The boxes are pretty small and so are the text. It'd be nicer if they were larger, as they are the most important thing. You could have an alternative design where you select a user first, then enter a password, for configurations with few users. This also helps the issue of not knowing who the default users are, if the user somehow missed it. You can't click on the text boxes, but there's a mouse, which is inconsistent. I found that very annoying, I carefully try to click into those small boxes, and nothing happens. You can alt-tab between them though.

When I log out, the username text box doesn't have focus immediately, and I have to click on it. Wait. I can click on it suddenly? Oh, I can click on it, but I can't click on the other box to select that. Oh, trying to figure this mystery out, I get an assertion failure on kernel/ds/list.c line 183. The panic screen is nice, though.

It's often unclear how to close windows and demos. Alt-F4 should close windows. Some places supports Control-Q though. The terminal doesn't support Control-Q (but neither does gnome-terminal so that's probably okay). It'd be nice if you could resize windows also, and have them maximized.

There's no pwd command in the shell. I like to use that to see where I am.

Caps-lock doesn't work and neither does the numpad keys. I think this is exemplary of many of the issues I encountered: It's outside your normal usage or something you would expect of a real desktop environment, and you know not to expect that, but it looks so usable that people assume everything works.

^W doesn't delete the last word in the shell prompt but inserts an invisible non-whitespace character. Other shell line editing features work, so this is inconsistent.

No tab-completion in the default shell (would be nice).

The included bash shell is a bit nicer to use than the default shell but doesn't have a nice default prompt. ^C doesn't work properly under bash.

Pressing Home and End doesn't navigate to the start of the line or end of the line in either the default shell or bash.

Alt-Tab should show icons for every open window so you can see everything you have open, but it just shows the current selection.

How do you power it off properly? The power button just logs you off.

The mouse moves a bit slowly for my taste in qemu, if qemu supports it and you don't already have it, some pointer integration could be nice. I think the mismatched mouse speed between my normal environment and PonyOS made it seem a bit more sluggish. I can't quite tell if the mouse needs to be drawn more fast, perhaps there are some optimizations you can take? I haven't added mouse support to my OS, so I don't know how feasible any of this is for you.

/dev/random seems biased, I expected more printable characters in it. We talked about this on IRC and looks like there's a modulo bias.

cp /dev/random /rng made a file called ’/rng’ in the root directory that I can't view with cat. But rm /rng deleted it. This issue didn't seem to happen in other locations. You might have some semantic issues in the VFS.

cp /dev/random /home/local/rng creates a small file. Does cp not handle nul bytes? Or, wait, does that only grap 1024 bytes?

IO redirection doesn't work in the default shell.

cat /dev/random > /home/local/rng in bash works, but you can't ^C, and if you close the terminal, the system is very sluggish, I don't think the writing process is killed. Upon reboot, it's just exactly 1024 bytes when mounted from Linux?

Launching desktop icons works on single click, not doubleclick. Oh hey, I got four terminals open now, and I just wanted one. The little lag between pressing it and the program actually opening makes it easy to click more times because nothing happens. Perhaps use an hourglass cursor or something as immediate feedback.

The fractal program doesn't support zoom (aww) and you can't drag the window to to be larger.

You can't right click on the program list programs and select close in a menu.

Launching too many Dooms at once (4!) by accident, one of them had its close button under the program list, so it wasn't even visible.

The close button close doesn't doom, but just makes it force the user to press Y, which was confusing. Control-Q doesn't work here. When it does close, it takes a moment before it actually closes.

Controls in the RPG demo are awkward. It takes a moment between the character facing another direction before it moments.

Doing ls -a /home/local shows that I have *two* directories both called .prboom. I.. might have some filesystem corruption, I did shut it off uncleanly some times.

Some sort of user guide of what stuff to try out could be cool.

After some heavy use (actual use of the terminal environment doing various things), using the poweroff button locks the environment up.

Finally, I can't figure out the desktop background geometrically. Are all the ponies hovering over the reflective surface?
Antti
Member
Member
Posts: 923
Joined: Thu Jul 05, 2012 5:12 am
Location: Finland

Re: Announcing PonyOS 3.0: BFG Edition!

Post by Antti »

sortie wrote:The panic screen is nice, though.
Almost like a signature candidate.
Post Reply