How difficult to port programs to ARM debian?

While I was having a mouse round the apt-get/cron nexus today, I found that on mine that by default there's a daily cron job that does an auto update. I don't run my RPi overnight, which is why I haven't seen it do anything. I'd like to disable it, but can't find anything in the man pages apart the preferred way to do that. I can always hack into the 'apt' script would prefer not to. I'm a Fedora user by default, so the RPi is my first real exposure to the Debian world.

So, can anybody point me at a description of the Aptitude package management organisation and, on particular where to find where stuff like APT::Periodic::Auto can be found and how to change its settings? On my box it is *NOT* in /etc/apt/ - I've looked.

--
martin@   | Martin Gregorie 
gregorie. | Essex, UK 
 Click to see the full signature
Reply to
Martin Gregorie
Loading thread data ...

easire is to remove the script that does it out of the cron directories try /etc/cron.daily

--
Ineptocracy 

(in-ep-toc?-ra-cy) ? a system of government where the least capable to lead are elected by the least capable of producing, and where the members of society least likely to sustain themselves or succeed, are rewarded with goods and services paid for by the confiscated wealth of a diminishing number of producers.
Reply to
The Natural Philosopher

le vendredi, 19 avril, 2013, á 19:40:46h +0000, Martin Gregorie a écrit:

Yes it does an update of available packages, but the preferred way of doing unattended upgrades is with the related cron-apt package.

The daily cron job does significantly more than just update the available packages so it would be most unwise to follow the advice of the uninformed and just delete the cron job file.

But did you look under /etc/apt/apt.conf.d where all the files for tweaking the different aspects of apt live?

ls -1 /etc/apt/apt.conf.d/

01autoremove 05aptitude 10periodic 15update-stamp 20apt-show-versions 20archive 20changelog 20dbus 20listchanges 20packagekit 35dhelp 40dselect 50unattended-upgrades 70debconf 90autoclean 90showupgraded 99update-notifier

cat 10periodic

//***************************************************************************// //| //| file : /etc/apt/apt.conf.d/10periodic //| //*-------------------------------------------------------------------------*// // APT::Periodic::AutocleanInterval "0"; // APT::Periodic::Download-Upgradeable-Packages "0"; // APT::Periodic::Update-Package-Lists "1"; // //***************************************************************************//

A quick primer for package management dpkg

dpkg -p package_name tells you package details

dpkg -L package_name tells you list of files installed from package

dpkg -S path_to_file tells you the name of the package to which the file belongs you can just list part of the path which may results in multiple package names being returned

dpkg --purge package_name remove the package and all of its configuration files

If you want a simpler interface to dpkg as well as combining with apt-get functions, install wajig (silly name) but it makes command line editing recall manipulations simpler.

apt-get install wajig

Reply to
J G Miller

.... because it contains all the common C bindings for the kernel APIs.

Linux replaced the 'bigger hammer' with code reuse, often in the form of code libraries, which works really well, but at a cost: an application's dependencies on a set of libraries. clib is a good example and, as very many language compilers are effectively a preprocessor that front-ends the C compiler, many program language's compiled code depends on clib too.

And *IS*. There is no Linux distro that I know of that doesn't include clib.

Not necessary - for C anyway, but a good learning exercise for getting up to speed with almost any other language's runtime system regardless if whether the language is compiled, interpreted or requires a language- specific VM.

But - are you sure that the ETHOberon Linux compiler isn't just another front end for gcc? Very many other language compilers work that way: COBOL, Fortran, C++, some Java flavours and at least one Ada implementation all work that way in the Linux environment.

--
martin@   | Martin Gregorie 
gregorie. | Essex, UK 
 Click to see the full signature
Reply to
Martin Gregorie

you have to work with apt somehow, either apt-get (to install) and apt-cache (to search) or aptitude (CUI tool) or synaptic (GUI tool)

there's also dselect which is a cui tool a bit like aptitude but doesn't download anything itself - IIRC you run "apt-get dselect-upgrade" to activate the selections, it's pretty old-school, I don't think many people remeber how to use it. IIRC you had to untangle any dependancy problems manually. Aptitude has a dependancy solver that almost always works.

It's only going to want to download stuff if you ask it to

Hmm, I've never used micro-emacs on a computer with more than 100Mib RAM. (largest was some sort of SUN4 sparcsserver in the early 90s) why not just use the real thing?

the following emacs-like editors are available in debian

  • jed; * jove and xjove; * mg; * ng-cjk, ng-cjk-canna and ng-latin; * qemacs and qemacs-nox; and * zile
--
?? 100% natural
Reply to
Jasen Betts

but its a good idea to actually delete the /etc/cron.daily/ XXX fiile that deals with automatic updates ONLY. You need to know a little of how cron works of course to know that here is such a file. And in general its one task per file.

But that's the difference between being informed, and checking the contents of that directory and its files rather than being a smartass and shooting your mouth off.

--
Ineptocracy 

(in-ep-toc?-ra-cy) ? a system of government where the least capable to lead are elected by the least capable of producing, and where the members of society least likely to sustain themselves or succeed, are rewarded with goods and services paid for by the confiscated wealth of a diminishing number of producers.
Reply to
The Natural Philosopher

Martin Gregorie a écrit:

Which means that you installed cron-apt, an optional package.

--
John Hasler
Reply to
John Hasler

Actually, changing the value of APT::Periodic::Auto from 1 to 0 would be easiest if I knew where that variable is defined and/or if there's a script or utility that can edit the file. Easier because the change would be trivially easy to reverse should I want to do so and is unlikely to be stomped on by an upgrade to /etc/cron.daily/apt

--
martin@   | Martin Gregorie 
gregorie. | Essex, UK 
 Click to see the full signature
Reply to
Martin Gregorie

Not knowingly or deliberately. It was either pre-installed on my SD card image or got pulled in as part of my usual weekly package update run.

--
martin@   | Martin Gregorie 
gregorie. | Essex, UK 
 Click to see the full signature
Reply to
Martin Gregorie

$ dpkg -S /etc/cron.daily/apt apt: /etc/cron.daily/apt

i.e. the script is part of the apt package, not cron-apt.

--
http://www.greenend.org.uk/rjk/
Reply to
Richard Kettlewell

The version in sid has a comment at the top telling you where to put it:

$ head -10 /etc/cron.daily/apt #!/bin/sh #set -e # # This file understands the following apt configuration variables: # Values here are the default. # Create /etc/apt/apt.conf.d/02periodic file to set your preference. # # Dir "/"; # - RootDir for all configuration files #

conffiles are not blindly overwritten on upgrade in Debian. If you have modified it then you will get a prompt asking whether you want to keep the old or new version (among other possibilities). If you choose to keep the old version then the new version is stored as a separate file next to it for reference; similarly if you do choose to install the new version then a backup is kept of the old version.

--
http://www.greenend.org.uk/rjk/
Reply to
Richard Kettlewell

OK, to test my understanding: if I create a file called /etc/apt/apt.conf.d/02periodic which contains the single line:

APT::Periodic::Enable "0";

this will prevent auto updates from happening. True?

OK, understood. What you describe is essentially the same as yum does in a RedHat system.

What I was referring to as 'getting stomped on' was quick and dirty changes made to the /etc/cron.daily/apt script, not the config files.

--
martin@   | Martin Gregorie 
gregorie. | Essex, UK 
 Click to see the full signature
Reply to
Martin Gregorie

I'm continually optimising eg. my http-fetch system eg. to the fact that if you fetch 9 pages from BBC/OU it's got 80% duplicated in EACH fetch! And I never use a graphical-browser unless I need etc.; but I wouldn't make an elaborate install-method to use once-or-twice.

"a complete mirror of a repository" for me is a cardinal sin! The whole motivation for looking into rPi is escape the curse of the US infinite frontier attitude. Some years ago, I decide to try like the big- boys, so I got the 5-DVDs of Deb-Lenny, and while I was at it, include Slak13-DVD and some crappy-slak-derived-CD. I tried to install Lenny incrementally, on a spare PC, because I want small errors, NOT BIG disasters. Analysing why I dislike Deb compared to Slak: perhaps because Deb is built by a committee [SovietUnionLike] whereas Slak is built by a skilled 'writer', who eg. lays out a mental model of the install process, and then gives you a menu [with some sequence control] to select the pieces. Whereas Deb's attempt at being more automated, forces you to fly blind, and lose control. The Deb-5-DVDs were a failure [I never installed X] and I could never see how/if the directory of the total suite would be known. Which DVD to insert? The Slak13-DVD also failed a partial install, and I was advised 'unless you know what you're doing, you'd better install EVERYTHING'. I don't like that! The only installation which worked immediately was the crappy-cheapo-CD. There's a cultural conflict: that Deb doesn't make gpm [which can hand- carry any text string from anywhere to anywhere] available in the most basic installation, means we can never marry. OTOH the tribalists on the slak-news-group get infuriated if you are promiscious by cross-posting to non-slak-groups. It's not easy?

Reply to
Unknown

that strikes me as doing it the hard way.

The Deb-5-DVDs were a failure [I never installed X] and I could never see how/if the directory of the total suite would be known. Which DVD to insert?

It knows and will tell you perhaps it needs them all..

I had sarge on 9 cds, it was only slightly more convenient than downloading the packages over dialup.

The "base system" package contains little more than the essetials needed to install other packages.

"gpm" as absolutely useless on a headless machine... perhaps for this reason it's optional. debian doesn't force it on you. if you want it you need to install it, it's only 4 extra keystrokes when installing other things like ntp (or ntpdate) some soert of cron, an ssh server, a better editor than the default nano....

--
?? 100% natural
Reply to
Jasen Betts

That looks right.

/etc/cron.daily/apt is a conffile. You can check this with ?dpkg -s apt?.

--
http://www.greenend.org.uk/rjk/
Reply to
Richard Kettlewell

Many thanks. Added to my RPi installation, tested and working.

Thanks again. I've now found the information sources I needed to understand how apt works: the Debian Reference and (especially) Debian Policy manuals.

To the OP ========= If you're still following this thread, by now it should be obvious that that apt/aptitude doesn't and never did require 'always on' connectivity and you'll now know how to disable the overnight package update cron job.

You should now know also enough to check whether disabling the cron job also stopped automatic upgrades from being done by aptitude and/or any GUI pagkage management tool you may be using.

--
martin@   | Martin Gregorie 
gregorie. | Essex, UK 
 Click to see the full signature
Reply to
Martin Gregorie

WTF !! How can you have your computer going on-line out-of-your-control?

Reply to
Unknown

Try reading what I wrote: nothing has been happening I didn't know about. The auto-update (that I've now disabled BTW) is a daily cron job. Since you claimed to have used Linux, you should know very well that daily cron jobs run around 03:00 by default. Since I don't leave mine running overnight and the atd daemon isn't running, I know very well that the auto update has never run.

Now, look at the rest of thread, use the information in it to disable the auto-update on yours and be happy.

BTW, Debian org is clear that you might want to disable auto-update for 'unstable' but that its probably not necessary for 'wheezy'. If you're as paranoid as I am, you might disable it anyway, but if you do, you should be careful to regularly run a manual update, preferably immediately after a backup run. At least, that's what I do. I also keep my source version control repository on a separate machine.

--
martin@   | Martin Gregorie 
gregorie. | Essex, UK 
 Click to see the full signature
Reply to
Martin Gregorie

Many modern Linux systems use a more advanced method of running daily jobs, that also works when the system is not on 24h/day.

Reply to
Rob

"anacron" also avaialble in rasbpian

--
?? 100% natural
Reply to
Jasen Betts

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.