I assume the company includes busybox on the root filesystem of the device they are selling, and that they wrote some custom programs that they also put on the root filesystem.
As long as they haven't modified the source of busybox, and merely included it in the same filesystem as their closed source pieces, what's the problem?
I think it is much more likely that they are violating the GPL by not releasing modifications to the linux kernel than that they are not releasing changes to busybox.
I think most of the scary ideas Cory wrote about (cameras everywhere, the ability to track enoumous volumes of information,...) have been giving the upper hand to the citizenry against the government (in defense of liberty) more than the other way around.
The police are finding it harder, not easier, to abuse their vast powers when so many people have cameras and can upload the footage to youtube the same day.
Even in China, you could argue that the internet is working that way also. One person can send an email and inform millions of other people what is going on before the government can act to stop it.
I know what you mean about one side trying to permanently remove the rights of the other.
I still can't believe the RIAA successfully lobbied congress to prevent Americans from being able to purchase Digitial Audio Tape machines in the 1980s. The sheer gall of using congress to shut down entire technologies just because you think they threaten a business model you've become accustomed to making a killing at.
Having our rights curtailing like that really stings. The RIAA really has it coming this time.
so that someone can go after shoddy writers/speakers and thus bring responsibility to language?
Human languages are the same sort of beast that large open source software systems (like linux) are, only more so. To wit: a system of such complexity and scope solving a set of problems so pervasive and enormous that the only hope for inventing it in the first place, and for maintaining it, is for everyone to spend a lot of time practicing it and tinkering with it and for insights to be passed around freely. The immediate payoffs for all of this experimenting are the everyday problems of communication people need to solve; this is how we pay for all of the time everyone spends experimenting with and using language, without the need for owners. If you tried to construct a patent system to encourage people to further the development of human language (and thus establish "owners"), is there any doubt you would kill it?
Did you ever see that episode of "the Tick" where the tick runs into an alien that is fluent in all of earth's languages, except Esperanto, because "it was obvious from the start that that one was going nowhere."? The only reason an aritificial language like Esperanto can be designed at all is by cribbing off of the already existing natural languages.
This is a bit off topic but I similarly contend that the only reason most general purpose operating systems get off the ground at all is that they all had Unix to use as a crib. It took generations of graduate students tinkering with Unix to make it a useful general purpose operating system and what they achieved was cribbed off of by all modern proprietary generaly purpose OSes.
I meant to reply to your comment and somehow messed it up. My comment is shown as a reply to the parent of your post, instead of to your post.
Anyway, I have another point to make. If you look further down in the judgement you quoted, you can see where the court is discussing what happens when the copyright owner rescinds a license. That is, the licensee breaches a covenant of the license which means the owner can sue for breech of contract but not for a copyright violation, and the owner then decides to rescind the license for the violator by taking affirmative actions like sending a cease and desist letter.
Any further violations of the owner's copyrights are then treated like copyright violations.
Since most GPL cases are about getting the offending companies to stop using GPL code after informing them that they are in violation and rescinding their licenses, this case (Graham V. James) seems to favor the GPL defenders and not the attackers.
If you were trying to get the huge amounts of money that copyright violations make possible for actions that occurred before you took affirmative action to rescind the lisence for that offending company, however, then this case could block you.
I see you beat me to it. I just finished reading the decision myself and was about to make the same point.
Just to put it in my own words, the paragraph (from the court decision above) is making the distinction between failing to uphold a duty (convenant) imposed by the license (like making a payment required by the license), and failing to satisfy a condition of the license (like you are allowed to distribute binaries compiled from the source but not source code itself, or you are allowed to distribute source and binary together but not binaries by themselves). Failing to satisfy a covenant doesn't mean you are guilty of copyright infringement because the court can force you to make good on your convenant to repair the damage done (like making you pay unpaid bills).
Failing to satisfy a condition of the license that grants you rights, however, and you *are* guilty of copyright violations, because then you are exercising rights that were not granted you by the license, and which are denied to you by copyright law unless granted by a license.
I've had lots of experiences where I couldn't get newer versions of Windows to work with older pieces of hardware, and where upgrading a version of Windows would do something like stop a sound card from working that used to.
Getting things to work under windows can also be maddening.
I hardly think that's typical, these days, although that was a fair characterization of the Unix world (linux included) if you go back far enough. Which is exactly why Windows took over the world like it did. Unix was strictly for piano players and windows was not.
That's like making fun of someone who is practicing the piano by saying,"Why bother to learn to play the piano when you can just put a CD of whatever music you want to listen to in a player?"
Now, plenty of people can and do learn how to play the piano. You don't have to be especially gifted to do so. You do have to be interested in learning and practicing music, though.
Now, for it to make sense for you to have a piano in your house, you don't personally have to be interested in learning how to play it. Other family members might want to play it, or you might have people over for dinner ocassionaly who like to play it, entertaining the rest of you in the process.
I think you underestimate the how much people who just want to do email and web surfing reply on programmers in the family or in their circle of friends to maintain their windows installations.
The person who just wants to surf probably wouldn't care if they were using windows or linux at this point as long as other people are mainting the installation for them. And windows is not so easy to administer that such people don't wind up getting help from family/friends.
I've helped out many friends and family with windows (and its "fabulous hardware support.")
Well, if microwaves were hit with the tax, it would increase the budget for the BBC content you care about, which can't compete with the popular shows that fund themselves, so that would be a good thing, would it not?
It just so obvious to me that the population at large, endowed with such poor taste as they are (else why would crap be popular), should be taxed to pay for the content you find particularly good that I wonder why you even bother writing that down.
I do see your point about the usefulness of a little misdirection (a law requiring a "variety" of programming) in getting it past the unwashed, though.
The priceless part was excluding headless, internet-less PCs with poor connectivity or missing software (that virtually any PC sold today for more than $300 would have). Now *that* was inspired.
I think a censored, searchable internet is a much better tool to bring an oppressive government down than a censored, non-searchable internet.
Google isn't the only one with a gun against its head here. The fact that the chinese government allows an internet at all shows it also has a gun against its head. It has no choice but to continue to allow its economy to grow, and attempting to shut down or stop the growth of China's access to the internet would directly injure its economy.
One the one hand, the chinese government has to restrict the dicsussion of its crimes against its own citizens or risk open revolt, on the other it has to allow information to be exchanged between its citizens over the internet if education and the economy are to continue to expand or face a worsening poverty and as a result, open revolt.
The chinese government is between a rock and a hard place. It has guns pointed at it from two directions.
Google is advancing the day when open dicsussion of the chinese government's crimes will take place, and the chinese governemnt has no choice but to let them.
I wonder, as a technical point, what is to stop a chinese citizen with access to the internet from their home linux computer from using an internet anonymizer like http://tor.eff.org? Or from setting up an encrypted VPN to a computer in the U.S. and browsing the web from there?
If a volunteer core of Americans set up a tor like network with ever changing IP addresses, how would the government be able to track it?
The economic reasons to change (or enable) will present themselves as consumer services that require IPv6 to run, or that work better over IPv6. Just as with VOIP, these may appear as cheap routers you stick on your home network to enable the service.
Like, say, home security monitoring services with each sensor having its own IPv6 address.
As these services become more widely deployed, and as the volume of IPv6 traffic tunneled over IPv4 grows, it will at some point become cheaper for the ISPs involved to support straight IPv6, instead of 6 on 4. At which point, it will be easy to do so, seeing as how every OS will then have mature dual stacks and the IPv4-only hardware will continue to function through 4 on 6 tunnels without ever knowing the difference or having to be touched or configured.
The IPv6 community has done an excellent job of thinking through these co-existance scenarios. I really don't see what DJB is complaining about.
Thanks for posting DJB's piece, it was an interesting read.
I don't see why everyone needs to change (if by that you mean 'get connected to the IPv6 network without losing your connection to the IPv4 network') at once, however. As long as useful services are provided over the IPv6 network that can't be provided over the IPv4 network, people will start changing over. As long as connecting to the IPv6 network doesn't mean you loose the ability to talk over the IPv4 network, and it doesn't, there is no penalty for connecting to IPv6 (except for the initial hassle of upgrading).
Seeing as how Windows XP and Linux both currently ship with mature IPv6 implementations, connecting to the IPv6 network is largely a matter of setting up a 6 on 4 tunnel to a tunnel broker. In other words, a configuration exercise, not an upgrade exercise.
Why should anyone do that, you ask? To access a new service that requires it. Plenty of people who are not computer savvy and who wanted to get VOIP service from Vonage stuck a VOIP router in their home network and the router configured itself.
All that is needed to get us closer to the magic moment are compelling applications. Suppose, for example, that people start doing home security monitoring by using IPv6 addressed window and door sensors. To subscribe to such a service they send you a router that you stick in your home LAN, right next to your vonage VOIP router if you have one, and the router automatically connects to a tunnel broker and sets up a 6 on 4 tunnel to connect your sensors to the IPv6 network.
As more and more people start using such services, the traffic traversing the IPv6 network starts growing. Initially this traffic will mostly tunnel through the IPv4 network but as it grows, ISPs will have a reason to offer direct IPv6 service (to lower the bandwidth required to carry all the 6 on 4 headers to just that required to carry the 6 headers by themselves).
I think the IPv6 community did a great job in thinking through the of transition scenarios and providing all sorts of tunneling mechanisms to allow IPv4 and IPv6 to exist side by side.
I am not sure why DJB thinks those transition mechanisms are not enough.
You have at least two simple options for figuring out where a source package puts it stuff when you do a make install.
The first is using the DESTDIR variable, the second is using the --prefix= option when you run./configure.
If the DESTDIR variable is supported by Makefile the source tarball comes with, then you invoke it like this:
make DESTDIR=/tmp/install install
That has the effect of prepending "/tmp/install" to the destination path of every file the makefile copies./usr/bin/some_file becomes/tmp/install/usr/bin/some_file. You can then do things like "find/tmp/install -print" to get a comprehensive list of files that would be installed.
If you look at the slackbuild scritps slackware uses in its source directory to compile packages into binary tgz's, you will see this being done as a first step. Then makepkg is run from within/tmp/install to capture the binary files,
Your second option is to run configure like this:./configure --prefix=/tmp/install/usr/local
This won't always work, but usually does. The reason is that some packages have files that need to know where other files in the package are and have this information hard coded into them during the build process through the prefix variable.
I've written several slackbuild scripts for packages slackware doesn't come with and I've had to do it both ways. I actually, in the case of the R language, ran into the issue I warned you about with --prefix. Fortunately, it was just a single bash script that the R build process had hard coded the path into so I added a sed command to my build script to remove the/tmp/install part of the hard-coded path in the script.
This is one place where slackware really shines. Everything is done with straight forward, easy to examine, bash scripts. The slackbuild bash scripts located in slackware-10.1/source/ are very easy to read and learn from.
Once you've build a binary package this way, and you run installpkg some_package.tgz on it, the full list of files installed is written to/var/adm/packages/some_package, which is another way to peruse the list of files installed.
If the episodes could be downloaded off the internet, and they were DRM protected, you could ensure that most of the interested fans would actually pay the $12 per season required to fund the whole thing. AND you wouldn't even need the TV networks or the entertainment cartel involved.
This is the perfect case for DRM technology.
The entertainment cartel keeps thinking that DRM will save them because it prevents people from copying their shows. But DRM would also enable people outside the cartel to produce content *that would have to be paid for* to be viewed, thus eliminating the one thing the cartel has that no one else does: a lock on distribution. So it would break the cartel by enabling shows like enterprise to be fan funded and independently produced.
I imagine the financial arrangments would go like this. If you pay $12 for the season, you can register your DRM player and download the episodes as they are produced and watch them. After some delay, decrypt codes are published for the shows and they become open content.
So the $12 lets you see the episodes as they "air". If aren't that interested in the show, you can watch them after a delay of some weeks or months, at which point you may or may not become so interested that you might be willing to pay.
Once reading and writing were considered subjects only a few experts could ever aspire to.
Now we realize that everyone can learn how read and write. We have learned how to teach everyone, not just the people who are the easiest to teach, but everyone.
So too with arithmetic and algebra.
I propose that programming is something everyone could learn, but that we have only bothered, so far, to figure out how to teach it to the people hard wired to pick it up the easiest.
Programming, like music and math, are subjects everyone could learn if we only took the problem seriously enough and acknowledged that not everyone gets tripped up on exactly the same points. We need to find most of the tripping points for people who are not born programmers and start writing courses and books that dwell on those points, instead of rushing past them.
I only now figured out that you were "the annotator." Forgive my absentmindedness;-)
I have to admit your car/monkey analogy has some promise. The monkey represents the programs or facilities in the OS that we know how to instruct or use but have given up on understanding the inner workings of. All of us, no matter how masterful a programmer, will only ever obtain a very rough understanding of the vast majority of the workings of the modern OS. How much does even as celebrated a programmer as Linus understand about the myriad of protocols that made KDE possible? It I inserted a subtle flaw that prevented KDE from working properly on Linus's main machine, would he stop his other work long enough to figure it out, or would he reinstall his distrbution of choice and get back to his other work? He would reinstall and, in effect, rely on his trust of the monkey that is the distribution maintainers.
We all have areas we are intellectually interested in and areas we have no interest in. No matter how well written my air conditioner / furnace manual is, I am just not interested in learning enough about how it works to maintain it myself. So I buy a yearly service contract with a company. They come out twice a year to maintain it and when it stops working I call them and they promise to fix it on the same day at no additional charge. You might say I have a real live monkey at my service in that case. You could equally well say that about Linus reinstalling KDE from a stable distribution.
I think that because of the growing complexity of the modern home computer and the broadband services it enables, the maintainence of a typical home computer can only be automated to a certain degree, and requires skilled human intervention at some interval to keep it working. The Windows update service is one attempt at this, and the Linspire click and run another (much more exciting and promising attempt).
In the case of Linspire, their programmers are completely focused on configuring the desktop through custom scripts to maintain the illusion of a smoothly functioning desktop. They don't write the software itself, they only worry about integrating the pieces to a unified whole. Charging $99 a year for the click-and-run warehouse strikes me as reasonable, given that they are keeping all the packages up-to-date (no small task when your list of applications covers a large chunk of the open source applications relevant to the desktop).
Now, while I can appreciate the effort Apple has put into polishing their OS's desktop, I don't think further automation/polish is the answer to what we need next. No matter how well they polish it, it will break in unpredictable ways when enough people use it for enough different tasks.
I think the answer is that the average user has to give up on maintaing their OS and hire a service with a programming staff to do it for them in the sense that Linspire is doing.
Well, I certainly agree that physical and logical design matters, and that Apple has had some great thoughts along those lines.
I just thought the annotator of "In the Beginning was the Command Line" was making too much out of his car and drill analogies. I also thought he completely missed Neal's greatest point in "the right pinky of god."
I assume the company includes busybox on the root filesystem of the device they are selling, and that they wrote some custom programs that they also put on the root filesystem.
As long as they haven't modified the source of busybox, and merely included it in the same filesystem as their closed source pieces, what's the problem?
I think it is much more likely that they are violating the GPL by not releasing modifications to the linux kernel than that they are not releasing changes to busybox.
I think most of the scary ideas Cory wrote about (cameras everywhere, the ability to track enoumous volumes of information, ...) have been giving the upper hand to the citizenry against the government (in defense of liberty) more than the other way around.
The police are finding it harder, not easier, to abuse their vast powers when so many people have cameras and can upload the footage to youtube the same day.
Even in China, you could argue that the internet is working that way also. One person can send an email and inform millions of other people what is going on before the government can act to stop it.
I know what you mean about one side trying to permanently remove the rights of the other.
I still can't believe the RIAA successfully lobbied congress to prevent Americans from being able to purchase Digitial Audio Tape machines in the 1980s. The sheer gall of using congress to shut down entire technologies just because you think they threaten a business model you've become accustomed to making a killing at.
Having our rights curtailing like that really stings. The RIAA really has it coming this time.
My bad. Sorry ;-)
Are you saying without Newton, Calculus would have been seriously delayed?
Assuming you are...
Leibnitz actually published his work on calculus before Newton published his.
http://en.wikipedia.org/wiki/Leibniz_and_Newton_calculus_controversy
so that someone can go after shoddy writers/speakers and thus bring responsibility to language?
Human languages are the same sort of beast that large open source software systems (like linux) are, only more so. To wit: a system of such complexity and scope solving a set of problems so pervasive and enormous that the only hope for inventing it in the first place, and for maintaining it, is for everyone to spend a lot of time practicing it and tinkering with it and for insights to be passed around freely. The immediate payoffs for all of this experimenting are the everyday problems of communication people need to solve; this is how we pay for all of the time everyone spends experimenting with and using language, without the need for owners. If you tried to construct a patent system to encourage people to further the development of human language (and thus establish "owners"), is there any doubt you would kill it?
Did you ever see that episode of "the Tick" where the tick runs into an alien that is fluent in all of earth's languages, except Esperanto, because "it was obvious from the start that that one was going nowhere."? The only reason an aritificial language like Esperanto can be designed at all is by cribbing off of the already existing natural languages.
This is a bit off topic but I similarly contend that the only reason most general purpose operating systems get off the ground at all is that they all had Unix to use as a crib. It took generations of graduate students tinkering with Unix to make it a useful general purpose operating system and what they achieved was cribbed off of by all modern proprietary generaly purpose OSes.
I meant to reply to your comment and somehow messed it up. My comment is shown as a reply to the parent of your post, instead of to your post.
Anyway, I have another point to make. If you look further down in the judgement you quoted, you can see where the court is discussing what happens when the copyright owner rescinds a license. That is, the licensee breaches a covenant of the license which means the owner can sue for breech of contract but not for a copyright violation, and the owner then decides to rescind the license for the violator by taking affirmative actions like sending a cease and desist letter.
Any further violations of the owner's copyrights are then treated like copyright violations.
Since most GPL cases are about getting the offending companies to stop using GPL code after informing them that they are in violation and rescinding their licenses, this case (Graham V. James) seems to favor the GPL defenders and not the attackers.
If you were trying to get the huge amounts of money that copyright violations make possible for actions that occurred before you took affirmative action to rescind the lisence for that offending company, however, then this case could block you.
I see you beat me to it. I just finished reading the decision myself and was about to make the same point.
Just to put it in my own words, the paragraph (from the court decision above) is making the distinction between failing to uphold a duty (convenant) imposed by the license (like making a payment required by the license), and failing to satisfy a condition of the license (like you are allowed to distribute binaries compiled from the source but not source code itself, or you are allowed to distribute source and binary together but not binaries by themselves). Failing to satisfy a covenant doesn't mean you are guilty of copyright infringement because the court can force you to make good on your convenant to repair the damage done (like making you pay unpaid bills).
Failing to satisfy a condition of the license that grants you rights, however, and you *are* guilty of copyright violations, because then you are exercising rights that were not granted you by the license, and which are denied to you by copyright law unless granted by a license.
I've had lots of experiences where I couldn't get newer versions of Windows to work with older pieces of hardware, and where upgrading a version of Windows would do something like stop a sound card from working that used to.
Getting things to work under windows can also be maddening.
I hardly think that's typical, these days, although that was a fair characterization of the Unix world (linux included) if you go back far enough. Which is exactly why Windows took over the world like it did. Unix was strictly for piano players and windows was not.
That's on longer true, however.
That's like making fun of someone who is practicing the piano by saying,"Why bother to learn to play the piano when you can just put a CD of whatever music you want to listen to in a player?"
Now, plenty of people can and do learn how to play the piano. You don't have to be especially gifted to do so. You do have to be interested in learning and practicing music, though.
Now, for it to make sense for you to have a piano in your house, you don't personally have to be interested in learning how to play it. Other family members might want to play it, or you might have people over for dinner ocassionaly who like to play it, entertaining the rest of you in the process.
I think you underestimate the how much people who just want to do email and web surfing reply on programmers in the family or in their circle of friends to maintain their windows installations.
The person who just wants to surf probably wouldn't care if they were using windows or linux at this point as long as other people are mainting the installation for them. And windows is not so easy to administer that such people don't wind up getting help from family/friends.
I've helped out many friends and family with windows (and its "fabulous hardware support.")
I felt exactly the same way.
I am so used to being blown away by Vinge.
He doesn't often write but when he does, he puts a lot of thought into it.
He didn't put much thought into this article.
Man, if Linus thought Dijkstra hated him, imagine what Dijkstra would have thought of Mr. Behlendorf.
I wonder how the existance of a censored google would have effected the equation. Would it have made it easier for word to spread quickly?
Notice how the government had the ability to censor any web page it wanted, but that even so, word spread faster than the governement could stop it.
I'd say a general case was just made *for* the morality of companies offering censored internet services in China.
If email services were not a prevalent as they were, censored or not, Li might not have gotten away with it.
Well, if microwaves were hit with the tax, it would increase the budget for the BBC content you care about, which can't compete with the popular shows that fund themselves, so that would be a good thing, would it not?
It just so obvious to me that the population at large, endowed with such poor taste as they are (else why would crap be popular), should be taxed to pay for the content you find particularly good that I wonder why you even bother writing that down.
I do see your point about the usefulness of a little misdirection (a law requiring a "variety" of programming) in getting it past the unwashed, though.
The priceless part was excluding headless, internet-less PCs with poor connectivity or missing software (that virtually any PC sold today for more than $300 would have). Now *that* was inspired.
Beautiful point about google playing dumb.
I think a censored, searchable internet is a much better tool to bring an oppressive government down than a censored, non-searchable internet.
Google isn't the only one with a gun against its head here. The fact that the chinese government allows an internet at all shows it also has a gun against its head. It has no choice but to continue to allow its economy to grow, and attempting to shut down or stop the growth of China's access to the internet would directly injure its economy.
One the one hand, the chinese government has to restrict the dicsussion of its crimes against its own citizens or risk open revolt, on the other it has to allow information to be exchanged between its citizens over the internet if education and the economy are to continue to expand or face a worsening poverty and as a result, open revolt.
The chinese government is between a rock and a hard place. It has guns pointed at it from two directions.
Google is advancing the day when open dicsussion of the chinese government's crimes will take place, and the chinese governemnt has no choice but to let them.
I wonder, as a technical point, what is to stop a chinese citizen with access to the internet from their home linux computer from using an internet anonymizer like http://tor.eff.org? Or from setting up an encrypted VPN to a computer in the U.S. and browsing the web from there?
If a volunteer core of Americans set up a tor like network with ever changing IP addresses, how would the government be able to track it?
Nicely put.
...
If I might elaborate on the economic reasons
The economic reasons to change (or enable) will present themselves as consumer services that require IPv6 to run, or that work better over IPv6. Just as with VOIP, these may appear as cheap routers you stick on your home network to enable the service.
Like, say, home security monitoring services with each sensor having its own IPv6 address.
As these services become more widely deployed, and as the volume of IPv6 traffic tunneled over IPv4 grows, it will at some point become cheaper for the ISPs involved to support straight IPv6, instead of 6 on 4. At which point, it will be easy to do so, seeing as how every OS will then have mature dual stacks and the IPv4-only hardware will continue to function through 4 on 6 tunnels without ever knowing the difference or having to be touched or configured.
The IPv6 community has done an excellent job of thinking through these co-existance scenarios. I really don't see what DJB is complaining about.
Thanks for posting DJB's piece, it was an interesting read.
I don't see why everyone needs to change (if by that you mean 'get connected to the IPv6 network without losing your connection to the IPv4 network') at once, however. As long as useful services are provided over the IPv6 network that can't be provided over the IPv4 network, people will start changing over. As long as connecting to the IPv6 network doesn't mean you loose the ability to talk over the IPv4 network, and it doesn't, there is no penalty for connecting to IPv6 (except for the initial hassle of upgrading).
Seeing as how Windows XP and Linux both currently ship with mature IPv6 implementations, connecting to the IPv6 network is largely a matter of setting up a 6 on 4 tunnel to a tunnel broker. In other words, a configuration exercise, not an upgrade exercise.
Why should anyone do that, you ask? To access a new service that requires it. Plenty of people who are not computer savvy and who wanted to get VOIP service from Vonage stuck a VOIP router in their home network and the router configured itself.
All that is needed to get us closer to the magic moment are compelling applications. Suppose, for example, that people start doing home security monitoring by using IPv6 addressed window and door sensors. To subscribe to such a service they send you a router that you stick in your home LAN, right next to your vonage VOIP router if you have one, and the router automatically connects to a tunnel broker and sets up a 6 on 4 tunnel to connect your sensors to the IPv6 network.
As more and more people start using such services, the traffic traversing the IPv6 network starts growing. Initially this traffic will mostly tunnel through the IPv4 network but as it grows, ISPs will have a reason to offer direct IPv6 service (to lower the bandwidth required to carry all the 6 on 4 headers to just that required to carry the 6 headers by themselves).
I think the IPv6 community did a great job in thinking through the of transition scenarios and providing all sorts of tunneling mechanisms to allow IPv4 and IPv6 to exist side by side.
I am not sure why DJB thinks those transition mechanisms are not enough.
You have at least two simple options for figuring out where a source package puts it stuff when you do a make install.
./configure.
/usr/bin/some_file becomes /tmp/install/usr/bin/some_file. You can then do things like "find /tmp/install -print" to get a comprehensive list of files that would be installed.
/tmp/install to capture the binary files,
./configure --prefix=/tmp/install/usr/local
/tmp/install part of the hard-coded path in the script.
/var/adm/packages/some_package, which is another way to peruse the list of files installed.
The first is using the DESTDIR variable, the second is using the --prefix= option when you run
If the DESTDIR variable is supported by Makefile the source tarball comes with, then you invoke it like this:
make DESTDIR=/tmp/install install
That has the effect of prepending "/tmp/install" to the destination path of every file the makefile copies.
If you look at the slackbuild scritps slackware uses in its source directory to compile packages into binary tgz's, you will see this being done as a first step. Then makepkg is run from within
Your second option is to run configure like this:
This won't always work, but usually does. The reason is that some packages have files that need to know where other files in the package are and have this information hard coded into them during the build process through the prefix variable.
I've written several slackbuild scripts for packages slackware doesn't come with and I've had to do it both ways. I actually, in the case of the R language, ran into the issue I warned you about with --prefix. Fortunately, it was just a single bash script that the R build process had hard coded the path into so I added a sed command to my build script to remove the
This is one place where slackware really shines. Everything is done with straight forward, easy to examine, bash scripts. The slackbuild bash scripts located in slackware-10.1/source/ are very easy to read and learn from.
Once you've build a binary package this way, and you run installpkg some_package.tgz on it, the full list of files installed is written to
If the episodes could be downloaded off the internet, and they were DRM protected, you could ensure that most of the interested fans would actually pay the $12 per season required to fund the whole thing. AND you wouldn't even need the TV networks or the entertainment cartel involved.
This is the perfect case for DRM technology.
The entertainment cartel keeps thinking that DRM will save them because it prevents people from copying their shows. But DRM would also enable people outside the cartel to produce content *that would have to be paid for* to be viewed, thus eliminating the one thing the cartel has that no one else does: a lock on distribution. So it would break the cartel by enabling shows like enterprise to be fan funded and independently produced.
I imagine the financial arrangments would go like this. If you pay $12 for the season, you can register your DRM player and download the episodes as they are produced and watch them. After some delay, decrypt codes are published for the shows and they become open content.
So the $12 lets you see the episodes as they "air". If aren't that interested in the show, you can watch them after a delay of some weeks or months, at which point you may or may not become so interested that you might be willing to pay.
Once reading and writing were considered subjects only a few experts could ever aspire to.
Now we realize that everyone can learn how read and write. We have learned how to teach everyone, not just the people who are the easiest to teach, but everyone.
So too with arithmetic and algebra.
I propose that programming is something everyone could learn, but that we have only bothered, so far, to figure out how to teach it to the people hard wired to pick it up the easiest.
Programming, like music and math, are subjects everyone could learn if we only took the problem seriously enough and acknowledged that not everyone gets tripped up on exactly the same points. We need to find most of the tripping points for people who are not born programmers and start writing courses and books that dwell on those points, instead of rushing past them.
How much you want to bet that the practical difficulty of building an n-bit quantum computer turns out to be exponential in n?
So building a 1024 qubit computer would be 2**1022 times harder than building a 2 qubit computer, in other words.
I only now figured out that you were "the annotator." Forgive my absentmindedness ;-)
I have to admit your car/monkey analogy has some promise. The monkey represents the programs or facilities in the OS that we know how to instruct or use but have given up on understanding the inner workings of. All of us, no matter how masterful a programmer, will only ever obtain a very rough understanding of the vast majority of the workings of the modern OS. How much does even as celebrated a programmer as Linus understand about the myriad of protocols that made KDE possible? It I inserted a subtle flaw that prevented KDE from working properly on Linus's main machine, would he stop his other work long enough to figure it out, or would he reinstall his distrbution of choice and get back to his other work? He would reinstall and, in effect, rely on his trust of the monkey that is the distribution maintainers.
We all have areas we are intellectually interested in and areas we have no interest in. No matter how well written my air conditioner / furnace manual is, I am just not interested in learning enough about how it works to maintain it myself. So I buy a yearly service contract with a company. They come out twice a year to maintain it and when it stops working I call them and they promise to fix it on the same day at no additional charge. You might say I have a real live monkey at my service in that case. You could equally well say that about Linus reinstalling KDE from a stable distribution.
I think that because of the growing complexity of the modern home computer and the broadband services it enables, the maintainence of a typical home computer can only be automated to a certain degree, and requires skilled human intervention at some interval to keep it working. The Windows update service is one attempt at this, and the Linspire click and run another (much more exciting and promising attempt).
In the case of Linspire, their programmers are completely focused on configuring the desktop through custom scripts to maintain the illusion of a smoothly functioning desktop. They don't write the software itself, they only worry about integrating the pieces to a unified whole. Charging $99 a year for the click-and-run warehouse strikes me as reasonable, given that they are keeping all the packages up-to-date (no small task when your list of applications covers a large chunk of the open source applications relevant to the desktop).
Now, while I can appreciate the effort Apple has put into polishing their OS's desktop, I don't think further automation/polish is the answer to what we need next. No matter how well they polish it, it will break in unpredictable ways when enough people use it for enough different tasks.
I think the answer is that the average user has to give up on maintaing their OS and hire a service with a programming staff to do it for them in the sense that Linspire is doing.
Well, I certainly agree that physical and logical design matters, and that Apple has had some great thoughts along those lines.
I just thought the annotator of "In the Beginning was the Command Line" was making too much out of his car and drill analogies. I also thought he completely missed Neal's greatest point in "the right pinky of god."