This issue plagued me for weeks. I set up a Fisheye / Crucible server on linux, extoling the virtues of linux over winblows to the IT staff only to have Fisheye start failing after a couple days of indexing on “too many open files”. I followed guide after guide for increasing the limits; editing /etc/sysctl.conf (
http://www.cyberciti.biz/faq/linux-increase-the-maximum-number-of-open-files/) and /etc/security/limits.conf (
http://confluence.atlassian.com/pages/viewpage.action?pageId=137265407).
Finally I found this guide (
http://techblog.ovidiudan.com/2008/09/too-many-open-files-change-ulimit.html) which at first I skimmed but then realized that Ubuntu Server is a little jerk and pretty much ignores whatever you set
until you add “session required pam_limits.so” in /etc/pam.d/common-session.
First, here is how you know ubuntu is being an jerk and ignoring you.
You’ve set new limits in /etc/security/limits.conf (say 51200) but then:
- sudo su – fisheye
- the user you use for fisheye in your /etc/init.d/fisheye script
- ulimit -n
- Responds with “1024″! Why?!? 1024 isn’t enough file handles to do squat!
- sudo vi /etc/pam.d/common-session
- add to end of file “session required pam_limits.so”
- sudo reboot… then check again and see if it took your new limits
Things that messed me up : “ulimit -n” showed the right numbers for my regular log in user (builder), but it wasn’t until i “sudo su – fisheye” (switch user to the fisheye user) that i saw it wasn’t activating on the others. Secondly, only that one guide ever said that Ubuntu is a stinker that ignores limits.conf until you explicitly add the shared object.
I hope this helps some other frustrated SCM person (who, like me, has likely gotten into the habit of nightly reboots trying to keep the linux box from hitting the limit and stopping indexing).
I’m a dremel junkie. I’ve had 2 Dremel Stylus tools; the first died because i totally fried out its batteries – it was a good soldier. I had a Dremel Cordless that worked great, but i ended up giving it away. My best trooper has been a Dremel Model 275 T6. I’ve sent this thing to hell and back; working on other tools, cars, radio control planes, general projects. I’ve regularly opened it and cleaned it out in the last years and I only sought to replace it as it was fixed speed and micro sawdust has worked it’s way into the Armature’s bearings packs.
The multi speed corded Dremel at Home Depot, simply labeled “200 Series” seemed the best bet. I noted right off the bat you removed the metal hook holder (part 23 in the 275 model diagram). It got hotter faster and within a week it just straight up died. I’de been using it mostly on wood cutting with two different bits (first the fixed wood cutting disc, then the EZ544). The problem was a short in the coil:

I replaced it with the coil from the 275 which seemed identical. That kept it going a couple more weeks before it seized again. I took it apart and cleaned everything. After checking everything, it turned out to be coil springs; they just don’t have as solid a connection. I’m not sure if you changed metal (old ones are gray, new ones look like thin copper) or they give up under heat. I used the old coil springs and was back in action. But it started to heat up worse and worse. It finally sizzled last night and literally showed smoke. I stopped and let it cool down overnight; the IC had fsimply burned up:


I’ve managed to now resurrected the old Dremel 275 using the newer Armature but all the original other parts (even the beaten and bruised carbon heads are holding up).
I’m not trying to further any xenophobic explination; however, it seems to me, besides cheapening some of the parts; offshoring the manufacturing (see below) might have serious affects on build quality.

At this point, I really seek nothing (unless out of the goodness of you heart you care to send me a sack of Model 275 T6 parts so i can keep my old one working). At $70 or so / unit, the lack of durability and quality in the new models has convinced me to seek either original older Made in USA ones from ebay or opt to pick up non-US made Black and Decker ones from target (at $30/unit, a price far more easy to accept if they last just a few months).
I’ve been rethinking my general strategy for svn layouts to make it work better with SVNMasterURI (WebDAV Proxy Passthrough).
I’ll summarize it as such:
Site1:
location: /svn-site1
SVNParentPath: /svnroot/mastered
location: /svn-site2
SVNParentPath: /svnsync/synced/site2
[only syncuser can write]
Site2:
location: /svn-site1
SVNParentPath: /svnsync/synced/site1
[only syncuser can write]
location: /svn-site2
SVNParentPath: /svnroot/mastered
By doing this the URLs match and this solves Subversion wigging out when you commit through a proxied slave. SVNMasterURI wants the same path after server to match up (server1/ABC should be server2/ABC).
What this means, is you need to know your server, but that should evident in the name:
svn-colo/svn-colo/ <-- stuff mastered here
svn-office/svn-office/ <-- stuff mastered here
svn-office/svn-colo <– logically assume this is a sync.
Also, we should at the least preface our location paths with “svn” so we can host other services (e.g. websvn) on a server.
A few things I keep forgetting and have to google and google to recall I’m finally going to take a quick moment and write here. These are the the handy linux changes that one really needs.
Switching primary monitors. From
thetechrepo is this quick handy bash script:
| 01 | |
| 02 | #!/bin/bash |
| 03 | # Author: Andrew Martin |
| 04 | # Credit: http://ubuntuforums.org/showthread.php?t=1309247 |
| 05 | echo "Enter the primary display from the following:" # prompt for the display |
| 06 | xrandr --prop | grep "[^dis]connected" | cut --delimiter=" " -f1 # query connected monitors |
| 07 | |
| 08 | read choice # read the users's choice of monitor |
| 09 | |
| 10 | xrandr --output $choice --primary # set the primary monitor |
| 11 | |
Next comes something that will do what
Divvy did for Mac OS X. It's called Compiz Grid and you need to install compiz-fusion-plugins-extra and compizconfig-settings-manager. Once you have those installed, ctrl-alt (numpad) will align and tile windows.
Lastly, i often have 2-3 computers side by side and i want to share the keyboard. One needs to set up synergy. See my last post about that one.
I decided with my new job I would attempt to go 100% linux and ditch Windows as my main OS. They provided me a windows 7 laptop, but a quick switcharoo of the harddrive and an ubuntu 10.10 install CD and I was up and running with 64bit Ubuntu 10.10 (and seriously, who puts 32 BIT Windows 7 on a new Dell .. that’s just plain goofy).
One of my first issues though was that I really like to run a particular
Adobe Air app,
pomodairo. Adobe Air is out for linux, but only 32bit. I found a few guides, but none worked till I came across
this one from James Ward.
The other thing I needed to set up pronto was Synergy – a clever client/server app for sharing a keyboard mouse.
Installing/Setting up Synergy:
On host (computer with the actual keyboard mouse):
- sudo apt-get install synergy
- sudo vi /etc/synergy.conf
| 01 | section: screens |
| 02 | ijohnson-Latitude-E6410: |
| 03 | builder-102dt01: |
| 04 | end |
| 05 | |
| 06 | section: aliases |
| 07 | builder-102dt01: |
| 08 | 10.1.2.56 |
| 09 | end |
| 10 | |
| 11 | section: links |
| 12 | ijohnson-Latitude-E6410: |
| 13 | left = builder-102dt01 |
| 14 | builder-102dt01: |
| 15 | right = ijohnson-Latitude-E6410 |
| 16 | end |
| 17 | |
| 18 | section: options |
| 19 | screenSaverSync = true |
| 20 | # My KVM uses Scroll Lock to switch screens, so set the |
| 21 | # hotkey to lock the cursor to the screen to something else |
| 22 | keystroke(f12) = lockCursorToScreen(toggle) |
| 23 | end |
| 24 | |
- A few notes: you'll want to search / replace all instances of ijohnson-Latitude-E6410 with whatever your host machine name is (shows on terminal). and all instances of builder-102dt01 with the client machine. I also set up an alias so it would be identified by IP as well.
- fire up the server with synergys --daemon --config /etc/synergy.conf &
- ampersand just used to background process
- On the client machine, you fire it up (where 10.1.2.30 is the host machine IP):
- synergyc --daemon 10.1.2.30
I got a flash card to show it works. Maybe it’s just finicky in nightly 30 of CM7/encore
- source of image: http://forum.xda-developers.com/archive/index.php/t-989637.html or http://android-addicts.org/board/showthread.php?343-ROM-CM7-SD-Bootable-w-experimental-BT-working.
- You need a 2Gb SD card (not sure if a bigger one would work).
- On my Mac,
- i wanted to be sure of which disk the sdcard was (would hate to kill my internal HD), so i do an “ls /dev/disk*”, plug in my card, then do it again (and see that /dev/disk2 showed up)
- also, to be safe, i launch the disk utility app (just spotlight for “Disk Utility”) and unmount any partitions of the sdcard
- finally, I went to ~/Downloads and did “dd if=2g_bt_card_image.img of=/dev/disk2″ (where “disk2″ is your SD card)
- this process takes a while (20-40 minutes is not unreasonable. i have a low class card, like class 1. but if you have a class 2 or 4, it should go quick)
- power off the nook, then boot to it.
Nook Color
- How to install Android 2.3 (Gingerbread)
- http://www.addictivetips.com/mobile/install-cyanogenmod-7-android-2-3-gingerbread-rom-on-nook-color/
- the nightly builds are here: http://mirror.teamdouche.net/?device=encore
- this guide covers everything, top to bottom. the only detail not mentioned is that if you use Mac OS X to do the dd command (step 2), you need to unmount the partitions first (use Disk Utility). Also, the dd command takes forever (or did for me.. operated at USB 1 speeds through the micro SD card reader – like 40 minutes for 2Gb)
- Afterwards, you’ll need to install Google Apps (if you skipped that in the guide above). Get it here: http://goo-inside.me/google-apps/latest/7/
- Also, note that as of now (build 30), youtube doesnt work. they’re fixing it.
- note that if you load it up as shown above, it wigs out on the sd card until you reboot. i thought i was good to go and just popped in my other SD card but it didnt catch until a reboot. also, it seems some apps didnt install until a reboot and i did all the accepting in the android market.
- I bought a few apps and was worried i would need to re-purchase them, but no, like the iOS, you can redownload purchased apps with ease.
- Overclocking it
- you need this file (http://www.addictivetips.com/?attachment_id=45994) if you loaded Froyo (2.2) or GingerBread on there (2.3). NOTE, even with the latest Nook update (as of Mar 23, 2011), it’s still running Eclair (2.1) at it’s base so you’ll need the file linked from this guide (http://forum.xda-developers.com/showthread.php?t=925451)
- Once you load it, with Froyo and Eclair, you’ll need an app like SetCPU (there are a handful in the market to use). i ended up buying setCPU for a couple bucks since it will load at start up. I noticed that with Gingerbread, it automatically moved up to 1.1ghz whereas froyo and eclair was still set at 800 (but i could move the slider up)
- Trying it first: you can dual boot into Froyo or Honeycomb first before you commit them to the nook. I did find that Froyo stock was sluggish (but adding the overclock uImage file fixed that)
- http://www.addictivetips.com/mobile/how-to-dual-boot-nook-color-with-froyo-on-external-memory-card/
I haven’t tried it, but you can run ubuntu on there too: http://www.addictivetips.com/mobile/how-to-install-ubuntu-linux-on-your-nook-color/
Some quick concepts that re-occur in those instructions:
- You need a microSD card of some size. a 2Gb one is like 5-6 bucks so no excuses to go smaller
- You use “nookie” images to load the card with a /boot partition that when powering up, takes over on the nook and lets you try it out.
- You “nooter” a nook which is akin to “jailbreaking” an iPhone. It just installs the market and gmail and few other key apps and the “Soft Keys” app
- if you forget to say yes very quickly when softkeys need admin/root access, you get hosed up, so watch for that after power up/setup
- “Soft Keys” is the little bubble app with a return arror icon, that when you click it, brings up the standard android Home, Menu, Back, Search icons. Almost all Android Phones (i think it’s a requirement) have these buttons. So the fact that the Nook Color only has Home (the nook “n” button) kinda makes life hard – you need to hit a preference or go back a menu and you cant. soft keys rectifies that. That said, you don’t need it for the table focused OSes. In Gingerbread (and i assume honeycomb, it’s been a bit) you have the back, menu and search buttons always shown in the upper right.
Totally hosing it up.
- Here is the nice part, at least for me, if you screw it up (like loading the froyo overclock image on the nootered base eclair) and it gets into endless reboots, after the 7th reboot it will automatically restore itself (yay!). so if you ever have to go back, force it to reboot 7 times in a row (killing it just as it starts up) and it will reset to stock OS (then reset your data when you boot and you got a blank nook again).
Also, for some completely unfathonamble reason, the android Nook app is better than the installed Nook software on the nook color. i can’t understand how my out of the box nook color had just page forward / back but the android app of Nook has the page scrolling and looks way better.
GingerBread:


Overclocked:

Working Flash 10.2 (though it’s like a delicate flower.. funnyordie completly crashes)

See! Page scrolling in the Nook android app (that’s the latest Stephen King, full dark no stars, by the way)

And yes, i loaded the Kindle app and bought a Kindle Single…

Videos are pretty good. I use aDownloader to get some from torrents. I use yxplayer as my video player. I tried QQPlayer, but the sound lagged. yxplayer plays divx, xvid, mp4 etc. I use PodKast for podcasts.

Try as i might, i can’t turn on bluetooth – i’m starting to think it’s not there (rumor has it that it is inside but disabled)
So i found this little tidbit while hunting something else, but i was suprised because i thought the only way you can use choices in Hudson was to read them as env vars from an invoked script.
If you make your build parameterized and say, add a choice called “Database”, you can refer to it in your build steps like this: ${ENV,var=”DATABASE”}
I write these posts with the hope google snags them and next time some other frustrated SCM / Builder is googling they find them.
I love this little app. what was totally unclear to me was how to import music. When i first downloaded it, that section just seemed to say “Add via Wifi” or iTunes. While I can’t show you the iTunes section, you’ll have to trust me, that after you sync the first time, in the Apps section (the tab of Apps when you pick your device – the place where you would select to add/remove or re-arrange icons), the bottom half has a sync-to-apps section which includes ReelDirector and you can just pick a file.. then when you launch reeldirector (cable still attached) and choose import, it starts sucking them over.
As for wifi syncing, you need to be on the same network. Here my iPhone and laptop are on the same wifi. You can see what the web page looks like and the phone (which told me the URL):
