Jump to content
funtoo forums


  • Content Count

  • Joined

  • Last visited

  • Days Won


sputnik last won the day on January 5

sputnik had the most liked content!


About sputnik

  • Rank
    Advanced Member

Recent Profile Visitors

437 profile views
  1. sputnik

    Distcc makeopts

    See the readme here: https://github.com/TemptorSent/overlay-dev-gcc-kit/tree/master/sys-devel/gcc
  2. sputnik

    Distcc makeopts

    I want a 65 core cpu too! I've been using distcc on Funtoo for years and yes, both of those lines are required for distcc. Unless you want the jobs to default to the number of cores on the local cpu, and don't care about the load. Finally distcc & pump mode are not default features.
  3. sputnik

    Raspberry 3 64bit Crossdev?

    The version of crossdev is of no consequence as long as it works, it's just a shell script. While qemu has value, it's _much too slow for general use. The docker idea sounds good, except it might be a hassle if you are using it for distcc, I don't know, never do docker. Setting up a local overlay is quite simple and almost surely you are going to do it sooner or later anyhow. I believe crossdev itself requires it, I don't know what it would use for an overlay (and it does need an overlay) without it.. The "custom ebuilds" are already done so I don't see an issue there. 5 or 10 minutes to set up your local overlay, drop the gcc build you want in there, then: crossdev <OPTIONS> --init-target Then change the gcc link in the crossdev overlay as shown in my 1st link. Pretty quick and painless. Then: crossdev <OPTIONS> again. Come back in a couple of hours. If you run this cool bash script on your $TARGET machine, it will even create the crossdev line for you: #! /bin/bash A="binutils" ; B=`eselect $A show` ; BINUTILS_VER=`echo $B | cut -d- -f5-` A=`/usr/bin/gcc-config -c` ; B=`echo $A | cut -d- -f5` ; GCC_VER=`equery l sys-devel/gcc | grep $B | cut -d- -f3-` A="sys-kernel/linux-headers" ; B=`equery l $A` ; KERNEL_VER=`echo $B | cut -d- -f4-` A="sys-libs/glibc" ; B=`equery l $A` ; LIBC_VER=`echo $B | cut -d- -f3-` echo "crossdev --b =$BINUTILS_VER --g =$GCC_VER --k =$KERNEL_VER --l =$LIBC_VER -t $(portageq envvar CHOST)" Source: https://wiki.gentoo.org/wiki/Distcc/Cross-Compiling Here is crossdev-20151026-r1.
  4. sputnik

    Raspberry 3 64bit Crossdev?

    I've been using crossdev for various devices on Funtoo very successfully for years now. There are differences from gentoo, only general gentoo instructions apply. 1st, a must read is this: https://www.funtoo.org/Cross-compiling_with_Crossdev. Then you will understand that the Funtoo gcc ebuilds do not work out of the box with crossdev at all. I have created ebuilds that seamlessly replace the official tree gcc ebuilds and at the same time also work with crossdev, see this: https://bugs.funtoo.org/browse/FL-3787 . I recommend using these ebuilds in your local PORTDIR, removing the _rc1 part of the name, allowing them to supersede the official ebuilds. This will cause you to have to rebuild the native gcc because I have additional use flags for arm support (in a crossdev gcc implementation) that don't exist on the official tree ebuild. Alternately you can just leave the _rc1 in the name and just call it directly on the crossdev command line, I found it too confusing to have all those versions floating around when it works just fine as a replacement. Your choice... In addition to the informational links above, I must tell you that I have had no success with any crossdev version beyond 20151026-r1, due to growing portage differences between gentoo and funtoo. Hmm, probably something from around that time here will do: https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-devel/crossdev/ I would be leery about using --stable also, I prefer to specifically call out the versions I want to match exactly the device I am building for, rather than counting on crossdev to make the right decisions for me. It didn't work well for me in the past, although I haven't tried it in a long time. When you successfully create your shiny new toolchain there is very pertinent info here also: https://wiki.gentoo.org/wiki/Distcc/Cross-Compiling
  5. Ref: http://forums.funtoo.org/topic/832-revdep-rebuild-issue/ I'm happy to report that I removed the workaround mentioned in that thread in /etc/env.d/99local, did env-update and source /etc/profile and at least on my ARMv7a device, revdep-rebuild no longer complains about missing libraries.
  6. sputnik

    Automatic system updates?

    I do exactly that with a bash script, but it is QUITE complex for many assorted reasons. I have several computers updated by the one script. Issues are: I don't allow root ssh access, so workarounds for that. I also backup all computers nightly with it. 1 computer is the ringleader, it's on 24/7. Different computers have different needs. On and on... But not to discourage you, I love it. It took about 1.5 years to get it more or less right, it's the biggest mess of spaghetti you can imagine and even minor changes have great potential to upset the apple cart. Oh, and I don't bother trying to catch every error that needs human intervention, early on I realized 1. That would be impossible. 2. After taking care of the obvious things it's rare that it doesn't work, when that happens the human intervenes, things will work the next night :P I was going to convert it to python but 1. I'm lame at python. 2. I fear the inevitable minor changes 3. It doesn't have to be fast or cool It does everything including updating eix on all computers, doing emerge @preserved-rebuild when needed, the only thing I left for the human was emerge --depclean and revdep-rebuild, I do that 1st thing in the morning so the "human" can see what's up. Logs are kept, there are no mysteries. It is set as a cron job after my normal bedtime but I can run it directly and override the cron job, which I almost always do. Turns computers on for the update/backup, turns them off when done, makes kernels (I have to update the config 1st of course), lots of stuff. About 3 years now, never any great problem, of course, growing pains the 1st 1.5 years.
  7. I have an ancient laptop with a HD of that size, mini IDE I believe it was called. And I have another 32?G mini IDE drive. The 32G recently died, it was used approx. a couple of hours per day. The laptop with the 40G is still ticking, but recently had a severe disk hit and I had to reformat it, luckily I back up everything so it was easy to fix. That machine is rarely turned on. End of life? perhaps... Anyhow, if it's ext type filesystem fsck works fine of course. fsck.vfat for fat32, ntfsfix for ntfs. I never use badblocks but I wonder if you could have all blocks intact and yet still have an error in the filesystem? Don't know the answer but I suspect you could. Have you tried reformatting? Of course, he will lose all of his ancient data :)
  8. sputnik

    Tethering on cellular.

    Glad to hear you got it going. One good trick for forcing python version without changing the setting in eselect is to make a link like this: mkdir /opt/python2_link ln -s /usr/bin/python2.7 /opt/python2_link/python2.7 Then at the beginning of run.sh add this line: export PATH=/opt/python2_link:$PATH Now it'll find python 2.7 FIRST, but the rest of your system will be running on 3.3 as it should.
  9. sputnik

    Tethering on cellular.

    ok, I actually went and looked at it, the readme says I'm not so great on java, so hopefully someone who is will speak up, but I think if you do what it says you'll be good. After that (I think!) you just start it by running that run.sh file as root. Also Koush is one of the giants of the android developer world, I'm sure he could help you if you asked him.
  10. sputnik

    Tethering on cellular.

    I know nothing of ClockworkMod Tether, but I was faced with a similar thing on my armv7a device recently. In that case it was chromium, there is a Debian compile of 45 series chromium for armv7a's, I don't find anybody with anything more current than that. I spent weeks trying myself ;) Although I suspect I could compile the 45 series from an old ebuild, I also saw stories of 11 hours just in the linking phase, Add to that 6 hours (thanks to distcc and two core duo machines) it took to compile the 47-48 series chromium (successfully here!, but failed linking, only 1G ram available). I just want it for a backup, I don't plan to use it much. Just dumping the Debian libraries into the rootfs caused conflicts with depclean, portage doesn't like to find strange stuff lying around. Here's what worked: Using file-roller it was easy to unpack the .deb. The only directory you care about is, I forget, data? or data something. In there you'll probably find /usr and /lib, something like that. So I created a /opt/chromium-browser dir and put the /usr and /lib dirs there. I had to edit the /opt/chromium-browser/usr/chromium-browser launch file, in there it gave a place to point it to libraries, pointed that to the /opt/chromium-browser/libs. Then I started it at the command line, it failed looking for libraries that we have in Funtoo but it didn't know where they were. It was only 2 or 3, so I made links to those files in the /opt/chromium-browser/lib dir and it worked! No issues at all and portage hums along quite happily, not even knowing it's there. It really wasn't possible in my case but it would be better to make a custom ebuild if you can and install it properly. But the /opt dir is the place to do dirty tricks like this if need be.
  11. sputnik

    revdep-rebuild issue

    Yes, as you can see I started to refer to that bug, but hesitated because I wasn't sure it was the same thing and didn't want to give misleading info. Thought I'd wait and see what others had found. I am at a loss as to how it is impossible to reproduce this bug, it's been there a long time, one x86 machine, two armvte5 machines, one of them with a fresh, clean newly installed rootfs, and a couple of months ago I got an armv7a machine, again, fresh, clean install, problem right out of the box. Thankfully the workaround solves it without harm it seems. I believe /etc/env.d/99local is a more appropriate place for the statement, as it is suggested that all local environment changes are added to that file, so you can keep track of what YOU have added, also negating the risk of overwrite with an update, and this _should be a temporary workaround. Oh, that's Mike JOHNSON, not that I care, it's just the worldly name someone assigned to me, has nothing to do with me. https://en.wikipedia.org/wiki/Ray_J._Johnson,_Jr. Saluga's shtick as Ray J. Johnson is to become annoyed when addressed as "Mr. Johnson", exclaiming in a loud voice, "My name is Raymond J. Johnson, Jr. Now you can call me Ray, or you can call me J, or you can call me Johnny, or you can call me Sonny, or you can call me Junie, or you can call me Junior; now you can call me Ray J, or you can call me RJ, or you can call me RJJ, or you can call me RJJ Jr." ultimately ending with, "but you doesn't hasta call me Johnson!"
  12. sputnik

    revdep-rebuild issue

  13. sputnik

    nvidia geforce 8800 gt drivers

    Supposedly the GPL restrictions on the nvidia drivers problem is solved, but I find it not to be so on the 340.xx series, has been an issue since 4.2.0. So I have to patch the kernel with this: # cat /usr/src/fix_gpl #!/bin/bash sed -i 's/EXPORT_SYMBOL_GPL(flush_workqueue/EXPORT_SYMBOL(flush_workqueue/' linux/kernel/workqueue.c So that solves the GPL problem. I just leave that snippet in my /usr/src directory and run it before compiling each kernel. Additionally another patch is needed for the driver itself. I can't give a reference for this patch, I found a fellow talking about it on a forum, it wasn't really given in usable patch form, but it was clear enough for me to make this patch: # cat /etc/portage/patches/x11-drivers/nvidia-drivers-340.93-r1/kernel-4.3.0.patch --- a/kernel/nv-procfs.c 2015-08-19 16:00:07.000000000 -0700 +++ b/kernel/nv-procfs2.c 2015-11-05 17:07:24.395722706 -0800 @@ -356,7 +356,8 @@ registry_keys = ((nvl != NULL) ? nvl->registry_keys : nv_registry_keys); - return seq_printf(s, "Binary: \"%s\"\n", registry_keys); + seq_printf(s, "Binary: \"%s\"\n", registry_keys); + return 0; } static ssize_t @@ -552,7 +553,8 @@ void *v ) { - return seq_puts(s, s->private); + seq_puts(s, s->private); + return 0; } NV_DEFINE_PROCFS_SINGLE_FILE(text_file); He was really talking about the 352.xx drivers, but it turned out to be so for the 340.xx series also. If you use those patches and recompile your kernel it will install. Several days now, no problems here. Good luck.
  14. sputnik

    nvidia geforce 8800 gt drivers

    Which nvidia driver? Which kernel? Why does it not installl? I have nvidia-drivers 340.93 installed on kernel 4.3.0 with a 8600M
  15. sputnik

    How to change tty fonts resolution

    There may be other ways, but I use consolefont. 1st entry here describes it (but briefly): http://www.funtoo.org/Fonts. Here's a decent how to: http://www.linuxforums.org/forum/linux-tutorials-howtos-reference-material/176836-howto-console-font-tweaking-gentoo.html For more help, here is one of my /etc/conf.d/consolefont files, it's default except for the "consolefont" entry: # The consolefont service is not activated by default. If you need to # use it, you should run "rc-update add consolefont boot" as root. # # consolefont specifies the default font that you'd like Linux to use on the # console. You can find a good selection of fonts in /usr/share/consolefonts; # you shouldn't specify the trailing ".psf.gz", just the font name below. # To use the default console font, comment out the CONSOLEFONT setting below. #consolefont="default8x8" consolefont="ter-116n" # consoletranslation is the charset map file to use. Leave commented to use # the default one. Have a look in /usr/share/consoletrans for a selection of # map files you can use. #consoletranslation="8859-1_to_uni" # unicodemap is the unicode map file to use. Leave commented to use the # default one. Have a look in /usr/share/unimaps for a selection of map files # you can use. #unicodemap="iso01"