Hacker News new | past | comments | ask | show | jobs | submit | wicket's comments login

Nice idea and something I would have otherwise liked to have tried out (I actually have two pairs of DK bongos) but its Windows only and it seems to be closed source. I searched high and low but I couldn't find a link to the source code or even the software licence. :(


Konga Beat uses a paid Unity extension which limits my ability to share the source code in a public repo. The code is also, admittedly, a bit messy. That said, I am happy to share the project's source code if you'd like to check it out! :)


> Syd is a user space wrapper

This sentence does not give me confidence. A general purpose sandbox should be implemented in the kernel. The kernel syscall interface will always remain available regardless of any sandbox that has been implemented in user space.

EDIT (to answer a few of the replies here):

The description lacks details so it's not entirely clear how Syd is intended to be used or who its target audience is. If this is intended for a security conscious user to wrap their own executables, similar to Firejail, I guess this serves a purpose but I would certainly hesitate to suggest that it is the "most sophisticated sandbox for Linux". We already have kernel-based SELinux, AppArmor, other LSMs and grsecurity which can ensure that every single executable will run in a sandbox regardless of the experience of the end-user, something a user space wrapper cannot achieve. It's not about whether or not it uses kernel facilities but about ensuring that absolutely everything will be sandboxed.


With seccomp, you have syscall filtering. The bits that are left exposed are largely around mm, and depending on how the sandbox works, non-syscall APIs like io_uring. It essentially actuates kernel APIs to sandbox, and then redirects a number of APIs to use userspace reimplementations.


I'm not sure this is correct, I suspect this works on a similar principal as something like gvisor where as I understand it syscalls are redirected to another userspace program. In gvisors case the kernel basically get's re-implemented in user-space to provide the secure container like implementation.

Also, as I recall some of the kernel based syscall based sandboxing have had a number of issues with dealing with some of the syscalls.


It's a bit non-obvious from that description but Syd does in fact use kernel facilities to do the sandboxing. A sibling comment links to some better documentation (the syd man page) that explains what it uses https://man.exherbolinux.org/syd.1.html

1) Seccomp, a BPF based kernel filter for syscalls

2) Bind mounts inside a filesystem namespace to control what files are visible

3) Landlock - more path restriction type stuff and permission changes to paths that are local to the application being wrapped

4) seccomp-notify (used with ptrace to inspect types of arguments to syscalls that bpf isn't allowed to access for security reasons, i.e. pointers)


It seems that Mobifree largely depends on the Android/AOSP ecosystem, which is controlled by Big Tech.


But being open source means that one could fork AOSP. Also the Google proprietary stuff comes with the Play Services, not AOSP.

So AOSP is a lot better than the alternatives, I would say.

I have a different feeling about Chromium: it is open source, but through it Google gets to control the future of the Web. But Android is not a standard, it's "just" one OS, so changes made by Google in AOSP don't really impact, say, iOS.


> But Android is not a standard, it's "just" one OS, so changes made by Google in AOSP don't really impact, say, iOS.

That's interesting because I personally do believe that Android is kind of the mobile standard, it has everything to be one, from the wide variety of devices to the certifications of conformity.


Much less than Chromium, right? Almost all users run Chromium, whereas you can run iOS and it has nothing to do with the AOSP codebase.


Let me know when the efforts of Mobifree lead to something that will allow me to install mainline Linux.


There are already phones like that. Go for it.


Try PostmarketOS?


It's worth pointing out that this project has not seen active development for a couple of years, since Take-Two sued the developers:

https://news.ycombinator.com/item?id=26199879

https://news.ycombinator.com/item?id=28402640


Aren't those links about a completely different project with a completely different name?


That's correct - OpenRW is a from-scratch reimplementation of GTA3, while re3 is a manual decompilation that's capable of reproducing the original executable (or something very close to it). Both projects are very impressive in their own right.

When re3 went public, OpenRW archived their repository; when re3 was DMCA'd, OpenRW unarchived their repository; and when re3 was sued, OpenRW ceased development.

(This is based on my recollection from observing this two years ago - there may be other factors involved)


Very sad to see.

OpenMW is a very similar project for a game of the same vintage - Morrowind. Still in active development (last commit 1 hour ago as of writing).

To think Bethesda would be fine with openMW, but rockstar had to shut down openRW.


Bethesda has, in fact, taken issue with OpenMW in the past [0].

Bethesda at least had a specific reason for going after OpenMW, though. They’re okay with it now under “certain conditions” that I’m sure the OpenMW devs aren’t going to argue with.

Their main ask was that the OpenMW devs don’t advertise OpenMW as a way to play Morrowind on Android (or other platforms besides PC).

And there’s an understanding that OpenMW’s “intention” isn’t solely to be a way to play Morrowind, but also to implement a generic RPG engine and editor that uses Morrowind’s gameplay and file structure. For someone to make their own game with, not using any of Morrowind’s assets. (I’m not sure if any such game exists, though)

[0]: https://wiki.openmw.org/index.php?title=Bethesda_Emails


"And there’s an understanding that OpenMW’s “intention” isn’t solely to be a way to play Morrowind, but also to implement a generic RPG engine and editor that uses Morrowind’s gameplay and file structure. For someone to make their own game with, not using any of Morrowind’s assets. (I’m not sure if any such game exists, though)"

To be honest, every project of this kind claims that. And in reality, everyone knows 99% of usecases for such engine is to play the original game. Sometimes there are new IPs being created on such engine. For example recently there's been some "boomer shooters" coming out using engines which were made originally to play classic DOOM or Duke Nukem 3D. But such cases are rare.


Openmw is a clean room implementation. Bethesda could throw a legal fit regardless but it would be indefensible for them to do so.


They can still take you to court for a cost which is negligible to them, but not to OpenMW developers.


... In countries with broken legal systems.


... i.e. all of them.


Clean rooms protect from patent issues, but do little to protect against copyright or trademark actions. The fact that one creates totally new code from scratch means nothing if the end product is too similar to the existing copyrighted work.


That's literally the exact opposite of reality:

> Clean-room design is useful as a defense against copyright infringement because it relies on independent creation. However, because independent invention is not a defense against patents, clean-room designs typically cannot be used to circumvent patent restrictions.

https://en.wikipedia.org/wiki/Clean_room_design


In code, not end product. You can reverse engineer code all day, but your end product better not end up looking identical to the protected work. I could set a thousand AI machines in a clean room generating new song lyrics. Eventually one of them will randomly come up with identical lyrics to a Taylor Swift song. That doesn't mean I now own those lyrics free and clear. "Technically, I didn't copy" isn't a defense when you try to sell an identical product. It can be a defense in patent areas where one wants to argue prior art or obviousness.


You can't copyright the functionality of a software program. Copyright is a fixed expression. You can't copyright a song about heartbreak and you can't copyright the idea of a four function calculator implemented in a GUI.

You may be able to patent the functionality of a piece of software.

The point of the clean room practice is to avoid a literal line for line copy of the original software. It would be entirely legal to say, write a song from the perspective of Taylor Swift about her feeling sad and betrayed after a breakup.

But analogies are dicey because the law treats functional software differently from literary expression.

Precedent here is vTech reimplementing the Apple II BIOS and Phoenix reimplementing the IBM BIOS and Connectix selling a PlayStation emulator for a fraction of the price of a PlayStation.


I'm just pointing out that your statement was 100% incorrect in every single possible setting.

A clean room is NEVER a possible defense for patents and it is sometimes a possible defense for copyright.


Except if you are going for obviousness you want to start with people who haven't seen the patented material. You put them in the metaphorical clean room and then argue the patent invalid because some rando people came up with the same solution to the problem. And for prior art you need a group of "clean" people who were using the process/device prior to the patent, which is especially useful when dealing with trade secret material that, fearing a leak, a competitor is trying to patent. You need people clean of any taint from that competitor.


You’re 180 degrees backwards.

Copyright infringement requires copying.

Patent infringement does not require copying.

There's a famous case on this exact issue.

Atari Games Corp. v. Nintendo of America Inc. 975 F.2d 832 (Fed. Cir. 1992)

"Nintendo can show copying by proving that Atari made literal copies of the NES program. Alternatively, Nintendo can show copying by proving that Atari had access to the NES program and that Atari's work — the Rabbit program — is substantially similar to Nintendo's work in ideas and the expression of those ideas."


No, clean rooms are a mechanism that allows a team to avoid copyright infringement by ensuring that the developers have never seen the copyrighted code.


The code avoids copyright, if it is actually different. The end product doesn't if it is still similar to the copyrighted work. Use a computer to rewrite Harry Potter all you want, but if it comes up with the same book it doesn't matter how you got there.


That's not a clean room implementation. A clean room would be having a description for the game of quidditch (game rules are not copyrightable just like specifications for software) and then writing a background story to explain it without ever having read a single word of Harry Potter. If that comes out anywhere similar to the Harry Potter books I'd be utterly amazed.


>> If that comes out anywhere similar to the Harry Potter books I'd be utterly amazed.

Considering that "Harry Potter" is not an uncommon name in the UK (I've met two) nor is the concept of a wizard school, or riding broomsticks, or house teams, I suspect that AI today might be able to generate something that would get Rowling's attention.


Rowling has been sued multiple times for the similarity of Harry Potter to previous books using those themes. She won every time. The bar for copyright infringement is not "a single piece of the book is similar" or even "a one sentence summary of the two is similar."


In Sony v Connectix a judge found that software designed for compatibility deserved less protection than literary works.


What does clean room mean in this context? Never decompiling the target?


"Clean room" reverse engineering basically has you with two completely separate groups of developers. One group will decompile and analyze the target software, and build a detailed specification of how it works. The second group, with legal, sworn documents that they have never seen even the machine code of the target software - uses those specifications to build the "clone".


Usually clean room mean those writing the code and people who decompiling are different people. So code is written against specification.

So no it's unlikely to actually be fully clean room project, but written from scratch.


To be fair to Bethesda, they provide all the tooling you would need to make your own Elder Scrolls game with Morrowind, Oblivion, Skyrim, et al..

Modding a Bethesda game is literally getting into the innards of the game itself and changing or replacing bits in it as you please, at least until we get into hooking in DLLs which is a whole different story.


OpenMW is a brand new engine though, built from scratch.


I might be confusing it with the project that seeks to remaster Morrowind in Skyrim, then.


Yeah the modding community is pretty insane.

There's also "Skyrim, Home of the Nords" which is an effort to re-create pre-Skyrim (the game) lore about Skyrim... in Morrowind.


Of course publishers are going to keep these old IPs under lock and key, because they've now figured out they can slap new graphics on it every few years and re-sell it to us at full price.


Worth noting that in case of the lawsuit they settled, with terms likely being "don't do it again".

https://www.pcgamer.com/take-two-dismisses-lawsuit-against-g...


>when re3 was sued

The day reverse-engineering legal protections failed.


Not really. No legal protection is able to stop an overzealous litigant from suing you. The real test is whether they win the case, not whether they can file one. Unfortunately, most people don't have the means to defend such a lawsuit, so they get bullied out of their legal rights.


This

These companies know very well these independent groups, even if it's on their legal bounds, can't afford a legal defense team and actively exploit that to abuse them away.


re3 is a very dubious legal case. They decompiled the game with debug symbols and then did a (aiui) non-clean room reimplementation of the code, based on the decompilation.

It is protected legal activity to decompile a binary and study the source.

It is protected legal activity to study some source code, describe it, and have someone who never saw the source reimplement the code described.

It is straightforwardly illegal to decompile source code, recompile it, and the distribute the recompiled binary.

re3 is somewhere between the latter two, and (again aiui from looking into it 2 years ago) they didn't have a clean room step.

It's probably a good thing no one will litigate it. It seems highly likely to be illegal and reasonably do. It would be a bad thing to spend money on.


> It is straightforwardly illegal to decompile source code, recompile it, and the distribute the recompiled binary.

But it is not straightforwardly illegal (according to Microsoft et al) to decompile source code, train an LLM on it, generate the source code, recompile it, and then distribute the recompiled binary.

One easy 947 quadrillion tensor-operations lifehack


"It is straightforwardly illegal to decompile source code, recompile it, and the distribute the recompiled binary."

According to what? If the rules are so poorly defined that way then maybe it's not a bad thing to disregard them. Because simply decompiling source code and then recompiling it isn't a simple one-step thing in the way you suggest, not even close.


It's the distribution step that's illegal, since you don't own the original binary. If you can't distribute the original binary, why can you distribute a modified version of it?

If you wrote a bash script which decompiled and recompiled the original binary, that would be your property to distribute as you like


Decompilation is also illegal in broken countries (which is most of them)


I find this hard to believe..


Next you will suggest that stealing original artwork and laundering copyright through generative art ML systems is not illegal...


false equivalence


Well, you wouldn't steal a car /s


Well, you wouldn't steal a car /s


You are right, however it's likely that OpenRW was also impacted by Take-Two's actions towards Re3 given that its development also ceased around the same time.


It's understated the impact that Encarta had on Microsoft dominance in the home computer market. Encarta came about at a time when internet access was not yet commonplace and "multimedia" PCs were next big thing. Amiga, Atari and Apple had CD-ROM drives but only the PC had Encarta. It was revolutionary for 90s teens with homework assignments. These days some might use the term "killer app" to describe it. Obviously there were many other factors that led to Wintel dominance, but Encarta certainly played a part.


> only the PC had Encarta

Encarta was available on the Macintosh in the 90s


> One of the more useful debugging advances that have arrived in the last decade is DTrace.

DTrace arrived over 17 years ago with the launch of Solaris 10.


I think they got El Pibe de Oro mixed up with Carlos "El Pibe" Valderrama, who astonishingly doesn't appear in Santa Marta or anywhere in Colombia.


That quote is quite ironic to tell the truth. Peñalosa created a public transport system that's overcrowded and unsafe. Nobody wants to use it, but many have no other choice but to use it.


Can you expand on that? Creating a public transit system that suffers from overcrowding doesn't sound like a failure; it sounds like a good start. (Nobody goes there anymore, it's too crowded. - Yogi Berra)


https://en.wikipedia.org/wiki/TransMilenio

It's not a failure in terms of the number of people that use it, but when the seats are full and the standing passengers are jam-packed like sardines, it's definitely nothing to brag about, and you certainly won't find the rich using it.

Peñalosa also introduced Pico y Placa (https://en.wikipedia.org/wiki/Pico_y_placa), a system that does not negatively impact those who can afford to own two cars, and forces the remainder of car owners to use the atrocious public transport system every other day.


Fortunately the Bogota Metro is under construction now and will be open in a few years.


If you're looking for an actively developed Maemo rebased on top of modern Debian, you might be interested in Maemo Leste. [1] It's actually rebased on top of Devuan Beowulf rather the Debian (Buster), but they are open to having a Debian flavour with systemd too if anyone is willing to add support for this.

[1] https://leste.maemo.org/


> The source code can be assembled into an executable that you can then run in Windows or Linux.

Where can I find the 6809 ports of Windows and Linux, or am I missing something?


Using MAME

> Once you've built defender you can now use the rom files in the `redlabel' directory to play defender on MAME. If you're on Ubuntu you can also install MAME with apt:

> sudo apt install mame


Assembling something to run under an emulator is not really the same thing.

The post then says:

> You can also assemble it into the 11 rom files that would have been loaded onto the arcade cabinet’s ROM board.

If I wanted to run this on an emulator, surely the assembled code would be identical, but the use of the word "also" suggests they are doing something else here.


I don't think there is a 6809 port of Windows/Linux, but you can compile it into an executable that is the ROM and emulator put together.

You can also find the original executable the files were extracted from here: https://github.com/mwenge/defender/blob/3363040ada69f54e304b...


Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: