Closed IgorTimofeev closed 8 years ago
They are not removed, but moved to loot disks. For example, the programs that were on internet card before beta 2, are on 'internet' loot disk now. To cycle through loot disks just craft one (e. g., OpenOS) with a scrench. Unfortunately, the rework of install.lua is missing in this version. So you need to copy files on loot disks manually.
@Fingercomp Thanks for the explanation, but it's really illogical. Perhaps, authors of OC done it to save disk space, but some insignificant 10 kilobytes for wget/pastebin will highly unlikely fill our hard drives :D
In the new OC version in the bin/ folder there is a lot of unnecessary programs for a mere mortal, however, the most commonly used software like internet-programs is absent. This is very disappointing.
It's because it hardly makes sense for software to just exist on a card. Look. You install openos from a floppy, then if you want internet stuff you install the internet apps (from the same floppy even.)
On Wed, 8 Jun 2016, 6:09 PM Igor Timofeev notifications@github.com wrote:
@Fingercomp https://github.com/Fingercomp Thanks for the explanation, but it's really illogical. Perhaps, authors of OC done it to save disk space, but some insignificant 10 kilobytes for wget/pastebin will highly unlikely fill our hard drives :D
In the new OC version in the bin/ folder there is a lot of unnecessary programs for a mere mortal, however, the most commonly used software like internet-programs is absent. This is very disappointing.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/MightyPirates/OpenComputers/issues/1856#issuecomment-224518843, or mute the thread https://github.com/notifications/unsubscribe/AC1W3Al02JLUn70pWbDvnXRDqdpQiVEPks5qJniygaJpZM4IwoQF .
@gjgfuj We did not understand each other. I propose to include internet software on a OpenOS loot disk to the bin/ directory, along with other standard applications, not on internet card.
It's just terribly inconvenient - we need to install OpenOS first, then we need to craft a floppy disk with internet utilities, then copy them from mnt/, blah-blah. It requires a lot of time and certain knowledge for newbies.
For example, here is an analogy: in OpenOS bin/ folder we have an utility for BIOS rewriting - not everybody uses it and not every often. However, it is really helpful program, and it is good that it exists by default. But a wget/pastebin programs are used almost by everyone to download existing programs from the Internet, and they were transferred to a separate loot disk, creating additional difficulties. I'm just trying to understand the logic of OC mod developers, and I'm asking them to reduce this difficulties, that's all.
An improved install program is planned for the future (that can install another disk), and you would already have a loot disk due to the fact that it's required for openos. Including these utilities with openos wouldn't be helpful as not every computer running openos would be able to use them. So theyd be a little useless to be part of the distribution. You could always just make a custom openos floppy to install from in your world if it's that big a deal.
On Wed, 8 Jun 2016, 7:21 PM Igor Timofeev notifications@github.com wrote:
@gjgfuj https://github.com/gjgfuj We did not understand each other. I propose to include internet software on a OpenOS loot disk to the bin/ directory, along with other standard applications, not on internet card.
It's just terribly inconvenient - we need to install OpenOS first, then we need to craft a floppy disk with internet utilities, then copy them from mnt/, blah-blah. It requires a lot of time and certain knowledge for newbies.
For example, here is an analogy: in OpenOS bin/ folder we have an utility for BIOS rewriting - not everybody uses it and not every often. However, it is really helpful program, and it is good that it exists by default. But a wget/pastebin programs are used almost by everyone to download existing programs from the Internet, and they were transferred to a separate loot disk, creating additional difficulties. I'm just trying to understand the logic of OC mod developers, and I'm asking them to reduce this difficulties, that's all.
— You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/MightyPirates/OpenComputers/issues/1856#issuecomment-224535554, or mute the thread https://github.com/notifications/unsubscribe/AC1W3G13sJb_tE6_tRdXfVDnXeMV43iGks5qJomzgaJpZM4IwoQF .
@gjgfuj For me - it's not a big deal. But newbies are still shouting like an "whhaaaaat where is pastebin.lua?", "why file not found", "what does it mean", etc. There's no information about internet loot disk in OC guide book, there's no info about it in OC wiki:
Where mortals can get information about this changes? And even if not every computer can run these programs without internet card - that's a reason to delete them? Really? The modular software systems are good, but not in this case. Insignificant kilobytes of the disk space against the usability? Yes, removing them definitely worth it.
It's new. It's in beta. There might not be information yet. So if your suggestion is to add such information, then make that.
Documentation always tends to be a bit behind the actual code and changes. As for usability, the program that will make it easier to install the drivers should be coming soon. And it will all boil down to something like install internet
. Of course people will have to craft floppies.. But after they do all that microcrafting and get everything working on the computer, I'm pretty sure it won't be that hard for them to craft the driver disk and install it. Unless their computer was build by another person. But that's completely different problem, isn't it?
Nothing was deleted, because it was never there in the first place.
On Wed, 8 Jun 2016, 8:20 PM Danil Krivonos notifications@github.com wrote:
Documentation always tends to be a bit behind the actual code and changes. As for usability, the program that will make it easier to install the drivers should be coming soon. And it will all boil down to something like install internet. Of course people will have to craft floppies.. But after they do all that microcrafting and get everything working on the computer, I'm pretty sure it won't be that hard for them to craft the driver disk and install it. Unless the computers were build by another person. But that's completely another problem, isn't it?
— You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/MightyPirates/OpenComputers/issues/1856#issuecomment-224548840, or mute the thread https://github.com/notifications/unsubscribe/AC1W3Iv9cY78gCuJGZnSCtHsRnuqMlzuks5qJpdlgaJpZM4IwoQF .
The reason why you have to install it manually is this:
FWIW, in addition to the above, I personally don't have a strong opinion either way (included in OpenOS vs. loot disks), I just want to get rid of the magic file systems. For those that missed it, there was a strawpoll on that topic, which favored the loot disk approach. Hence the currently in-progress work on install.lua. If that does still prove to be too annoying, we might still throw it into OpenOS in addition to the loot disks (which should remain for other OSes to access those libs without having to use the OpenOS floppy), my main concern with that being having to maintain the same code in two places...
You do make a fair point with this definitely having to be mentioned in the manual, though. I'll try remember adding it.
@skyem123 If the authors of OC have decided to remove "magic" file system components - so I asking them to add two programs to default OpenOS. I and many of my friends have a lot of online-installers for different programs, based on wget.lua, and with the new update they are simply does't work, because the above-mentioned programs are not available. Of course, we can install it via loot disk, but again, more difficulties to God of difficulties!
Such compatibility troubles appears not in first time: since 1.6 update io.open method started to work relatively to shell working directory. I don't understand why, I just accepted this fact and started to use shell.setWorkingDirectory(). For example, if I'm in /home/ directory, I can't open file from the root. It's really strange.
And now there is another compatibility problem, so I asking to solve it by adding wget/pastebin files - especially it's very easy.
Firstly, the point of OC 1.6 is to be a breaking change update. If this update didn't break things, then it would be OC 1.5.23.
Secondly, you don't need to use shell.setWorkingDirectory()
, instead, you should use absolute paths (they start with /
). I tested this on 1.6.0 Beta 2.
@skyem123 "Breaking change update" means a complete absence of support of applications that written using legacy API? Oh, great. I already feel the smell of beautiful and smart code.
P.S. Thanks for "/" tip.
The API is still there, just you have to go a different way of getting said API.
@IgorTimofeev, there has been many more changes that break code even more than it has done now, for example, moving OpenOS to a floppy disk from being a built into every computer broke everything at the time.
Also, programs aren't APIs, by the way, if you were talking about the internet and HTTP API then I could understand it, but using programs as APIs is why things like the GNU coreutils are a complete mess.
Finally, the io.open
thing was actually a bug on your side that was hidden by the fact that the home directory didn't exist before.
1.6 is a breaking change anyway (in the sense that things have to be adjusted to by the players), so it is the best opportunity to address long-standing things that people (me) are not happy with. And as mentioned, it's not the API that's changed, it's the way it's made available, so I disagree that this should have anything to do with the actual code involved :P (not saying that that's not grown somewhat convoluted over the mod's lifetime and numerous ports, but that's a different and unrelated topic).
@skyem123 You can call it whatever you want - api, applications, libraries, blah blah, it does not matter. There is a simple fact: before the OC 1.6 update all programs works fine, after update - no. Reason: OC source code changes and absence of backward compatibility. Also note that adding this compatibility will not affect the performance. And this is the main point.
@IgorTimofeev, the point of OC 1.6 is to change things for different reasons. Some of them are performance related, others, like the change that caused this, are more idealogical, where they are changed because we don't like how it worked before, and since this update breaks other things, they might as well be broken as well.
You already have been told many times: this is a major release. It can and will break things. I don't see the reason to point that out if a easy and backward compatible fix exists.
On Wed, Jun 8, 2016, 21:25 Igor Timofeev notifications@github.com wrote:
@skyem123 https://github.com/skyem123 You can call it whatever you want
- api, applications, libraries, blah blah, it does not matter. There is a simple fact: before the OC 1.6 update all programs works fine, after update
- no. Reason: OC source code changes and absence of backward compatibility. Also note that adding this compatibility will not affect the performance. And this is the main point.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/MightyPirates/OpenComputers/issues/1856#issuecomment-224605947, or mute the thread https://github.com/notifications/unsubscribe/AEFMuNpRXQL-Q0yIE_-jcZFC99vjYi1Mks5qJtD2gaJpZM4IwoQF .
The ideology in this particular case being trying to reduce implementation complexity and special cases. As well as reducing OpenOSes status as a special case (since those magical file systems are tailored towards OpenOS).
@skyem123 Well, apparently, the "idealogical" reasons - is the creation of artificial difficulties for users and compatibility issues for developers.
@dangranos No matter how big release is, the solution is very simple: add two tiny program in a standard directory. It turns out very funny: in the bin/ folder there is a lot of unnecessary programs for regular users, but the most frequently used software was transferred to a floppy disk. It's just not fair.
@IgorTimofeev, thing is, the programs you want to add require a component, while the ones that were added don't require a component.
@skyem123 Really, that is a reason?
if not component.isAvailable("internet") then
print("This program requires internet-card to work")
return
end
Yes, it is. Because then it becomes unfair to other components. I think the expectation is that all preinstalled programs will work without special components. When I say work, I mean "doesn't crash and doesn't refuse to work"
As I said, I'd like to wait for the reworked install.lua, if it turns out that's too annoying still (beta3 or so :P), I'd willing to put at least the internet programs into OpenOS. However, just to be quite clear, that still won't save people from having to reinstall OpenOS.
@skyem123 Why it's unfair? For example, Windows have pre-installed browser, but it will not work without internet. It's very simple and logical, isn't it?
@fnuecke Of course, reinstall is no problem. Thanks.
@IgorTimofeev: actually, windows got into a lot of trouble for having Internet Explorer preinstalled.
@skyem123 Well, Internet Explorer at least exists by default, but Pastebin.lua... not(
There is no benefit aside for a small amount of convenience, at the cost of making the user think there's internet access, while in reality, the program doesn't even start.
It's also worth noting that it is not much more inconvenient to install the drivers than it is to reinstall OpenOS
@skyem123 I don't understand you.
"This program requires internet card to work" - there is no internet access
"Downloading from pastebin..." - there is internet access
Programs starts and says me to insert internet card. It's illogicall or what?
It defies the expectation that all the programs will work out of the box
@skyem123 Now I don't understand you even more. It is bad that the program works out of the box, without annoying user? You're need more complexity, more difficulties? Interesting... Do psychiatrists have the appropriate term for this syndrome?
Nothing is wrong with wanting it to be perfect. I'm a perfectionist.
@IgorTimofeev My main concern with putting the internet programs wget
and pastebin
into OpenOS directly is related to addons: Three components in Computronics (the tape drive, the SD card and the SSD) add programs themselves. Now, if internet-dependent programs would be in OpenOS natively but a tape-drive dependent one would have to be installed via a floppy disk, that would be much more inconsistent and confusing, no? And what about the generator upgrade? That one has a program as well! Why would that not be in OpenOS?
@skyem123 Complexity and not out of box working can not be perfect. You're really bad perfectionist.
@Vexatos Maybe because of pastebin.lua is used by mostly everyone? Maybe because of first thing that people do on our server is running "pastebin run..."? And maybe because of Computronix is an add-on and it's not installed by default? Is that not logical or not obvious?
Well internet cards are also not installed by default :D
Kay, solution proposal: Make the internet lootdisk bootable, allow people to run a pastebin file from booting. That way they can run whatever installer file they please and don't need 2 loot disks if they just want some other software and not OpenOS itself.
For MineOS, it could just install OpenOS then via the pastebin installer.
used by mostly everyone
On your server, maybe. I know quite a few people who rarely use pastebin. I agree it's a useful program, but it would be inconsistent to have that program inside of OpenOS and a tape program not. From a point of immersion, there is no difference between the two so why should one be preferred over the other just because some people use it?
@Inari-Whitebear Enough of playing with words - you perfectly understand what I'm saying. Computronix is an additional modification that not installed on every server. So that's the reason why software for it must not be added to OpenOS.
@Inari-Whitebear that could be done with an internet-boot EEPROM...
@Vexatos true, or that :)
@IgorTimofeev OC isn't supposed to have anything hardcoded to OC itself and not open for addons. This would just be an inconsistency.
@Vexatos I have already explained the reason above. Any third-party modifications programs should not be added to the OS. But the movement of one of the most frequenlty used programs for native OC component to the external floppy disk - is illogical move, which creates difficulties for users.
OC isn't supposed to have anything hardcoded to OC itself and not open for addons.
Really? How about flash.lua program? BIOS rewriting is a hardcoded program that is used very seldom. Devfs is also hardcoded thing that needed to an extremely small number of users.
All computers have an EEPROM though. So the logic of there should be a program for it applies. Not all computers have a internet card however.
@Vexatos point was mostly just saying (I think), that ideally OC should just be implemented as an addon to OC. That is, both AddOns to OC and the core OC components should behave similarly. I migth be wrong there, but I believe I've heard Sangar say something to that extend.
I just wanted to remind everybody, that while it is very nice to have consistency and realism, you should also have the "noob" in mind that want's to get started with OC but might turn away, if the complexity is to high for the first simple tasks. This is not a "must have magic" vote or anything, but rather a impulse to also open the discussion how to make OC more beginner friendly.
(Just to make sure there's no misunderstanding here, pastebin
has not been removed from OpenOS. It's moved from the magical filesystem that was only present when an internet card was installed to a floppy.)
So... assuming that AddOns add loot disks too. For e.g. tape
there would also be a loot disk, right?
If so, then couldn't we use the new device info stuff to denote driver files for components and on which loot disks those are found? Maybe per architecture too, to not exclude older architectures...
So driver = {"lua5.2" = {{name="pastebin", disk="internet"},{name="wget", disk="internet"}}
or something of the sort.
Then OpenOS could read that info from the device info of the components in the computer on boot (or when someone inserts a component). It could then see "oh, there is no pastebin installed, but someone just inserted a internet card (or newly booted with one)" and be all Windows-style and user friendly, going "Hey, I noticed you installed a new device there, want me to install the driver for it? If so, please insert
I actually did think about something along those lines on the bus, but then forgot again :P Good point, yes. A more useful error than "file not found", ideally pointing to the name of a containing loot disk would probably make things a lot less frustrating at least (if not less annoying maybe :X). As to how that table would be filled... kind of messy, but might be worth looking into creating each registered loot disk's file system once and parse it to generate such a list automatically, and provide it via the computer API or so...
@IgorTimofeev devfs is hardcoded to OpenOS, not OpenComputers. Big difference. The default BIOS merely looks for an init.lua
file, I see nothing bad there.
Today I've updated the beta2, and was surprised that such a must-have things as pastebin and wget programs was removed from quck access. Of course, I can write my own script for component.internet, but why do I need such artificial complexity? Could you please add them in the OpenOS bin/ folder so that people did not experience difficulties with access to the most basic and most necessary programs?
P.S. Adding devfs and other geek things is good, but removing most needed programs is not.