Friday, April 28, 2017

Bill Nye Saves the World - Season 1 Comments

AstrologyReviewing the new Netflix show.
Trying to do what Penn & Teller's: Bullshit did, however, Netflix is doing a terrible job, less honest, less fact based.
Comedy is terrible as Bill is trying too hard to be funny, and just comes off as an idiot. I recently re-watched some of his original Bill Nye and he was silly, but forgivable as a kids show...also with more fact based arguments.

E01 - Earth Is a Hot Mess
This was very cringeworthy and terrible. A climate episode without a single climate scientist. Starting from a conclusion and not actually backing up the idea of anthropomorphic climate change.
The engineering around Venice is cool, but Venice has been known to be sinking for hundreds of years, so saying the issue is entirely climate change is appealing yo feelings and not science, and disregards facts.

I was also very annoyed by how they had a token nuclear power discussion  but dismissed it out of hand since many uninformed people don't like nuclear power. Instead of actually helping to educate and help restore public confidence. Nuclear power is significantly better than coal power yet the lack of understanding and fear has caused countries like Germany and France to revert to much less climate friendly power solutions.

Overall this was a very politically motivated episode with little educational aspects or scientific rigor.

E02 - Tune your Quack-o-Meter
Starts as just the Penn & Tellers episodes about crystal healing and other b.s. alternative medicines.
The panel was fairly good with two scientists discussing the relative validity if sound therapy, crystal therapy, sports medicine and placebos. There was another person who didn't add anything to the conversation except to criticize how things were being stated.

Then we had a comedy skit by an Indian making fun of white people for following other cultures alternative medicine. Didn't add anything.

Followed up with a fun display of antacid testing milk of magnesia vs some hippie dippy stuff from whole foods.
Better than 1x01

E03 - Machines take over the world
Simple review of some smart/IoT devices. and how machine learning is affecting us. The Veritasium Youtuber was brought in to do a story about an AI which through analysis of 16th century painters produced a unique work in the same style.

E04 - More Food, Less Hype
Starting with a nice little experiment to extract strawberry DNA and with Bill not trying to hard to be funny, I was really enjoying the middle school science class experience. It was also interesting, and unexpected, to me that Bill and his writers appeared initially to be in favor of genetically modified organisms (GMOs).

Derek Muller (@veritasium) was back again to do a quick story on the "science of feelings" interviewing people at a farmers market about their opinion of GMOs. Penn & Teller previously did a good episode which spoke to the same issues people talked about and thoroughly debunked ideas like "they're taking spider DNA and putting it int corn." All of the frankenfood fear mongers.

Overall a fine episode. I prefer when Bill is just playing the straight person without trying to do kiddy humor.

E05 - The Original Martian Invasion
This episode is about Panspermia. Wikipedia defines this as  the hypothesis that life exists throughout the Universe, distributed by meteoroids, asteroids, comets, planetoids, and also by spacecraft in the form of unintended contamination by microorganisms. Merriam-Webster defines this asa theory propounded in the 19th century in opposition to the theory of spontaneous generation and holding that reproductive bodies of living organisms exist throughout the universe and develop wherever the environment is favorable. The definition, or discussion in Bill Nye: Saves The World: The idea of panspermia is that an asteroid impact on Mars sent tons of materials into space, and teeny-tiny Martian microbes survived the trip and the landing, and started life on Earth.

Definitely another cringe worthy episode. There was some good discussions of the 2020 Mars missing by NASA to send another rover to Mars with better sample collecting systems. The plan is to hopefully plan for a secondary trip afterwards to retrieve the samples so that they can be analyzed on Earth for signs of live.

Celebrity appearances this time, Alton Brown, Hunter Pence, Will Wheaton, and Randy Couture. Hunter Pence hit a baseball to simulate an astroid (he wanted to be a comet) and hit a Mars globe which dropped goo on Earth. Definitely the best way to show Panspermia. Will Wheaton talked about aliens and Star Trek, as expected. Randy Couture played a "tough guy" Tardigrade. It was somewhat funny,  but mostly just terrible!

E06 - Do Some Shots, Save the World
An episode about vaccines. Penn & Teller's: Bullshit did a better episode on this. s08e10 - Vaccinations, more fact based, less hyperbole.

Bill tries to build an equivalency between seat belt laws and the laws forcing vaccines. I completely agree that people should be vaccinated, however, I don't agree with government authoritarianism forcing an action, however, the first thing they want to do in this episode is enforce an agenda that the federal government should force vaccinations. Local municipalities do have regulations around vaccines when trying to enter day-care or grade school.

Polio, they went to India and gave a quick review of a mass vaccination program there. The report used emotionally manipulative music, and hyperbole like, if even on kid doesn't have a vaccine then all kids are at risk.

Panel section; reformed anti-vaxxer mother, a sociology professor, a pediatrician. The anti-vaxxer mother was reformed when her family all got Rotavirus and she learned thy might have been able to avoid. A good discussion of the fact that many parents, mothers in particular, feel like they are becoming experts and either deciding not to vaccinate, or to "make their own schedule" for vaccinating.

No Bill Nye: Saves the World episode would be complete without a terrible sketch.

E07 - Cheat Codes for Reality


An episode focused on how games, gaming, and specifically video games are impacting how we live, work, and play. Starting with a discussion of medical training via video games. Next they discuss the impact on socialization, and personality with a focus on the hypothesis that video games may impact aggression. A quick review of eSports and gamers who play for a living. And finally VR.

This was the least chringy episode so far. But there are some of the tropes of todays attention defficit culture to get forced laughs. As always they must reiterate what the cultural norm of a gamer is, fat, teenager, basement...and say that, that is false and then remind us that people who play video games, casual mobile games all the way to hardcore PC FPS gamers include ~%50 women.

All in all, not a terrible episode. good review of the use of video games in laparoscopic surgical training. Basic psychological discussion the games don't have much if any correlated effect on agression, and then some simple fun with VR. Nothing mind blowing, nothing controversal.

E08 - This Diet Is Bananas
Fad Diets, forced jokes, nothing learned. Only one real scientist spoken too, a psyhcologist. Other persons on Bills panel were a comedian, and the host of The Biggest Loser, a show where people generally lose a ton of weight in a horribly unsustainable way and then gain it all back.

As you can tell I am getting tired of this show, glad it's not getting a second season. I'm only trying to complete the watching. Again, these were better dealt with on Penn & Teller's Bullshit!

E09 - The Sexual Spectrum
The Most cringeworthy, least science based episode. While trying to expand the discussion of sex (biological sex), gender indentity, sexuality, and gender presentation they choose to then talk about all items together and forget about the idea that they were trying to separate these ideas.

The big issues I have are

  1. Trying to define everything based upon 0.25% of the population. As stated in the episode, one (1) in four hundred (400) births has an abnormal number of sex chromosones, (1/400 =.25/100 = 0.25%).
  2. Mischaracterising opposing viewpoints regarding terminology used to talk about people. Saying that people should just get over the fact that we have persons who are intersexed, and those who have different sexualities, gender identities, and expressions. The argument is generally about whether or not one should be forced at gunpoint to accept and use a specific gender pronoun (ze/zer/zim/them/they/...etc). As the issues generally come from ideologies that require word police and enforcing how people speak at the point of a gun.
  3. The cartoon ice cream sexuality skit is absolutely the standard trope that people who disagree with someone elses lifestyle is secretly interested and ready to jump on that bandwagon. I agree that sexuality conversion therapy is a terrible, ineffective, and harmful activity. But I also feel that young people should not be inundated with sexuality selection, gender identification...etc. while still learning the basis of living, the need to sleep, the need to eat, the need to learn...etc.
  4. The sexuality song is utterly terrible. Just watch it!


E10 - Saving the World -- with Space!
Bill decides to complain about those who might think that space travel is no longer important. Let me say that I disagree with that assesment, and had not heard anyone espose the idea that we should not still explore space. In the US we have multiple private companies which are actively getting access to

E11 - Malarkey!
Penn & Teller did this better. Watch the Penn & Teller Bullshit Astrology episode, or the one on Mediums.

E12 - Designer Babies
In Vitro Fertilization (IVF) with screening, not very deep, basically introduced the idea of true designer babies and explained that we are not at the point of selecting traits. They didn't even start talking about the ethical dilemas of if we get to that point.

E13 - Earth's People Problem
I disagree completely with the idea that we should follow the China model of one child per family because of our carbon emissions. This shows the lefts desire to authoritarianism and I certainly disagree with that.

Then the biggest part is the standard leftist ideal that everything is the fault of the patriarchy. And they enjoyed making fun of guys who don't necessarily understand birth-control, this is a terrible way to educate. In the end when you make fun of someone like that they just shutdown.

Summary:
Bill Nye Saves the World is bad, It doesn't really talk to scientist or is very literate. Penn & Teller did all the same discussions, except the gender one as it only recently became a strong component of culture and politics. Unfortunately most of the discussion is infused with politics instead of facts, evidence, and building principals to form cohegent arguments. I was extremely happy when I understood this shwo was not renewed. However, it looks like it may have gotten a second season. I for one will not be watching.

Sunday, March 19, 2017

2017 Gaming PCs

Current Systems

Home Theater Gaming PC

This system is definitely better than my gaming system in all but one way, the graphics card is a bottleneck.

  • Case: Thermaltake CA-1D5-00S1WN-00
  • PSU: EVGA - 80 PLUS 600W -fixed
  • MB: ASRock Z170M Extreme4
  • CPU: Intel Core i7-6700K - 4.0GHz
  • RAM: GeIL EVO POTENZA 16GB (2x8GB) DDR4-2133
  • GPU: XFX FX-797A-TNFC AMD Radeon HD 7970 CE - 3GB
  • OS Drive: MyDigitalSSD 120GB (128GB) BP5e SATA III M.2 SSD

Gaming PC

I can't believe I was still running a Gen3 i7 from 2012 in this system. Five Years is quite the run for a gaming system

  • Case: SilverStone Fortress Series FT02
  • PSU: Thermaltake TR2 RX - 750W 80 PLUS Bronze - Modular
  • MB: ASRock X79 Extreme 4
  • CPU: Intel Core i7-3820 Sandy Bridge-E - 3.6Ghz
  • RAM: G.SKILL Ares Series 16GB (4x4GB) DDR3-1600
  • GPU: EVGA NVIDIA GeForce GTX 980 SC - 4GB
  • OS Drive: Plextor M5P Series 2.5" 128GB SATA III SSD

New Systems

Home Theater Gaming PC

I will replace the AMD Graphics with the Nvidia Graphics Card. PSU may also need to be replaced. This was my first mATX build and it looks pretty nice in the theater room.
  • Case: Thermaltake CA-1D5-00S1WN-00
  • PSU: EVGA - 80 PLUS 600W -fixed
  • MB: ASRock Z170M Extreme4
  • CPU: Intel Core i7-6700K - 4.0GHz
  • RAM: GeIL EVO POTENZA 16GB (2x8GB) DDR4-2133
  • GPU: EVGA NVIDIA GeForce GTX 980 SC - 4GB
  • OS Drive: MyDigitalSSD 120GB (128GB) BP5eSATA III M.2 SSD

New Gaming PC - Won

Handily beats my current gaming system. Also beats out my Home Theater system by moving to the Gen7 Intel chip, and upgraded graphics. The 1070 was what I was concidering for my next GPU.

  • Case: Phanteks Eclipse P400 Tempered Glass Edition
  • PSU: Corsair CX650M — 650W 80 PLUS Bronze - Modular
  • MB: MSI Z170A GAMING M5
  • CPU: Intel Core i7-7700K Kaby Lake - 4.2Ghz
  • RAM: Corsair Vengeance LPX 16GB (2x8GB) DDR4-3000
  • GPU: EVGA NVIDIA GeForce GTX 1070 - 8GB
  • OS Drive: Intel 600p PCIe M.2 SSD - 512GB




I may add images in the future.

Thursday, September 12, 2013

Firefox 23 broke the Address Bar Search

This is a short rant about the latest Firefox Release...23.0.x.
It appears that Mozilla decided to change the Address Bar functionality so that instead of always searching with a default search engine, it would search with the selected Search Bar engine. While I understand the idea it simply does not work, for my workflow. I have been dealing with it, silently cursing Mozilla for a week or so now when finally a Google search gave me a workable fix.
I installed the ad-don, Keyword Search which sets the address bar search engine and locks it. So far so good. When I type in the address bar I always get the Google search that I want. I hope this helps others.

Found the Ad-don here: http://superuser.com/questions/629530/firefox-search-behavior-changed-in-version-23-can-i-get-the-old-behavior-back

Friday, February 15, 2013

ReadyNAS NV+ v2 Transmission BT with flexget

This guide will cover the steps that I followed to get the Transmission BitTorrent client installed and working with my RSS feeder on a NetGear ReadyNAS NV+ v2 (ARM) I did all of this with RAIDiator 5.3.7 (the OS version)

1. Install the Root SSH Access plugin
http://www.readynas.com/?p=4203
To install plugins on the ReadyNAS
1) Download the .bin file
2) Navigate to the ReadyNAS configuration dashboard (https://ReadyNAS_IP) Select Configure from the header bar.
3) Navigate to the Add-ons section of the configuration dashboard (If you don't see it click on the double arrow (>>)
4) Click on the Add Add-on button (top right below Dashboard)
5) Browse to the bin file and Upload it.

2. Grab the Free Transmission plugin:
http://www.sergeysurba.com/projects/transmission
Install it the same wasy as the Root SSH plugin above.

3. Configure Transimission.
The transmission settings can be set via the webgui, for the most part. However some items can only be configured via the ssh connection, settings file is /c/transmission/settings.json
Information about the configuration variables: https://trac.transmissionbt.com/wiki/ConfigFiles

Example of my configuration
root@NAS:~# cat /c/transmission/settings.json
{
    "alt-speed-down": 50,
    "alt-speed-enabled": false,
    "alt-speed-time-begin": 540,
    "alt-speed-time-day": 127,
    "alt-speed-time-enabled": false,
    "alt-speed-time-end": 1020,
    "alt-speed-up": 50,
    "bind-address-ipv4": "0.0.0.0",
    "bind-address-ipv6": "::",
    "blocklist-enabled": true,
    "blocklist-url": "http://list.iblocklist.com/?list=bt_level1&fileformat=p2p",
    "cache-size-mb": 2,
    "dht-enabled": true,
    "download-dir": "/c/media/Torrents",
    "download-queue-enabled": true,
    "download-queue-size": 5,
    "encryption": 2,
    "idle-seeding-limit": 30,
    "idle-seeding-limit-enabled": false,
    "incomplete-dir": "/c/transmission/incomplete",
    "incomplete-dir-enabled": false,
    "lpd-enabled": false,
    "message-level": 2,
    "peer-congestion-algorithm": "",
    "peer-limit-global": 240,
    "peer-limit-per-torrent": 60,
    "peer-port": 15000,
    "peer-port-random-high": 65535,
    "peer-port-random-low": 49152,
    "peer-port-random-on-start": false,
    "peer-socket-tos": "default",
    "pex-enabled": true,
    "port-forwarding-enabled": true,
    "preallocation": 1,
    "prefetch-enabled": 0,
    "queue-stalled-enabled": true,
    "queue-stalled-minutes": 30,
    "ratio-limit": 2.0,
    "ratio-limit-enabled": true,
    "rename-partial-files": true,
    "rpc-authentication-required": false,
    "rpc-bind-address": "0.0.0.0",
    "rpc-enabled": true,
    "rpc-password": "password",
    "rpc-port": 9091,
    "rpc-url": "/transmission/",
    "rpc-username": "username",
    "rpc-whitelist": "*",
    "rpc-whitelist-enabled": false,
    "scrape-paused-torrents-enabled": true,
    "script-torrent-done-enabled": false,
    "script-torrent-done-filename": "",
    "seed-queue-enabled": false,
    "seed-queue-size": 10,
    "speed-limit-down": 100,
    "speed-limit-down-enabled": false,
    "speed-limit-up": 50,
    "speed-limit-up-enabled": true,
    "start-added-torrents": true,
    "trash-original-torrent-files": false,
    "umask": 0,
    "upload-slots-per-torrent": 14,
    "utp-enabled": true
}

To reload the configuration you must stop and re-start the Add-on. This can be accomplished by navigating to the Installed Add-on page, clicking on the name of the Add-on. Unchecking the enabled box, saving, then checking it again, and saving.

For easy torrent control I recommend flexget and the transmission-rpc plugin.
4. How to install flexget and the transmission-rpc plugin. Follow the guide for Linux here:
http://flexget.com/wiki/InstallWizard/Linux/Environment
1) Install python and python-pip
root@NAS:~# apt-get update
root@NAS:~# apt-get install python python-pip

2) check that the python installed is 2.6/2.7
root@NAS:~# python -V
Python 2.6.6

3) Install FlexGet
root@NAS:~# pip install flexget

4) Install the FlexGet transmission-rpc plugin
root@NAS:~# pip install transmissionrpc

6. Configure FlexGet: http://flexget.com/wiki/Configuration
Example of my configuration (simple because I have a webserver do the real filtering for me)
root@NAS:~# cat .flexget/config.yml
presets:
  tv:
    all_series: yes
    set:
      path: /c/media/Torrents
    transmission:
      host: localhost
      port: 9091
      username: username
      password: password

tasks:

  showRSS:
    rss: http://showrss.karmorra.info/rss.php?user_id=getYourOwn&hd=null&proper=null
    preset: tv

It is recommended to use a symbolic link to place the configuration files into the RAID area (/c)
e.g.
lrwxrwxrwx  1 root  root    11 2013-02-12 18:45 .flexget -> /c/flexget/
To create this link do the following
root@NAS:~# cd ~
root@NAS:~# mkdir /c/flexget
root@NAS:~# ln -s /c/flexget/ .flexget

7. Test that FlexGet works, and doesn't show any errors
root@NAS:~# flexget --test
I recommend using this test action anytime you make changes just to be assured that the configuration is still valid.

7. Schedule FlexGet to run following this guide:
http://flexget.com/wiki/InstallWizard/Linux/Environment/FlexGet/Scheduling
root@NAS:~# contab -e
insert and paste:
@hourly /usr/local/bin/flexget --cron
Or the following equivalent expression
0 * * * * /usr/local/bin/flexget --cron
In cron the values are as follows
min hour day month day-of-week
If you set divisions it runs when there is a zero remainder or you can think of it as every multiple of the divisor. e.g. */10 = 0,10,20,30... or */2 = 0,2,4,6,8...



Thursday, December 20, 2012

Get iperf3 (new version) source code

There is a new version of iperf, iperf3 at code.google.com/p/iperf/. I am not sure if it is any better than iperf2 but it is cool to have a new source to play with. Anyways if you want to build this code on Ubuntu you may encounter a failure due to missing libraries.

Here is a quick review of my attempt to build this tool.

1. Download the latest beta code
user@localhost:~$ wget http://iperf.googlecode.com/files/iperf-3.0b4.tar.gz

2. Extract the code
user@localhost:~$ tar -xvzf iperf-3.0b4.tar.gz

3. With most source code you then have to run the configuration tool for the makefile to be properly built

user@localhost:~$ cd iperf-3.0b4/
user@localhost:~/iperf-3.0b4$ ./configure
This is the output that I got
./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for ranlib... ranlib
checking whether ln -s works... yes
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/bin/ld option to reload object files... -r
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... (cached) ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for ANSI C header files... (cached) yes
checking for uuid_create... no
checking for uuid_generate... no
checking for uuid_generate in -luuid... no
configure: error: libuuid is not available
What I noticed is that libuuid is not available. So how do we find where we can get libuuid? A google search lead me to this page:
www.debian-administration.org/article/334/Finding_which_package_contains_a_file
and the apt-file tool

4. So let us use apt-file and figure it out and then install the necessary library.
4a. If you don't have apt-file follow the guide available at the link above to install it and prepare, or just do the following
user@localhost:~/iperf-3.0b4$ sudo apt-get install apt-file && sudo apt-file update

4b. Search using apt-file for libuuid
user@localhost:~/iperf-3.0b4$ apt-file search libuuid
cruft: /usr/lib/cruft/filters-unex/libuuid1
drizzle: /usr/lib/drizzle7/libuuid_function_plugin.so
drizzle-dbg: /usr/lib/debug/usr/lib/drizzle7/libuuid_function_plugin.so
fp-units-base-2.4.4: /usr/lib/fpc/2.4.4/units/x86_64-linux/uuid/libplibuuid.a
fp-units-base-2.4.4: /usr/lib/fpc/2.4.4/units/x86_64-linux/uuid/libuuid.o
fp-units-base-2.4.4: /usr/lib/fpc/2.4.4/units/x86_64-linux/uuid/libuuid.ppu
fpc-source-2.4.4: /usr/share/fpcsrc/2.4.4/packages/uuid/src/libuuid.pp
libdata-uuid-libuuid-perl: /usr/share/doc/libdata-uuid-libuuid-perl/changelog.Debian.gz
libdata-uuid-libuuid-perl: /usr/share/doc/libdata-uuid-libuuid-perl/copyright
libuuid-perl: /usr/share/doc/libuuid-perl/changelog.Debian.gz
libuuid-perl: /usr/share/doc/libuuid-perl/copyright
libuuid-tiny-perl: /usr/share/doc/libuuid-tiny-perl/changelog.Debian.gz
libuuid-tiny-perl: /usr/share/doc/libuuid-tiny-perl/copyright
libuuid1: /lib/x86_64-linux-gnu/libuuid.so.1
libuuid1: /lib/x86_64-linux-gnu/libuuid.so.1.3.0
libuuid1: /usr/share/doc/libuuid1/changelog.Debian.gz
libuuid1: /usr/share/doc/libuuid1/copyright
libuuidm-ocaml-dev: /usr/share/doc/libuuidm-ocaml-dev/README
libuuidm-ocaml-dev: /usr/share/doc/libuuidm-ocaml-dev/changelog.Debian.gz
libuuidm-ocaml-dev: /usr/share/doc/libuuidm-ocaml-dev/copyright
libuuidm-ocaml-dev: /var/lib/ocaml/lintian/libuuidm-ocaml-dev.info
libuuidm-ocaml-dev: /var/lib/ocaml/md5sums/libuuidm-ocaml-dev.md5sums
libuuidtools-ruby: /usr/share/doc/libuuidtools-ruby/changelog.Debian.gz
libuuidtools-ruby: /usr/share/doc/libuuidtools-ruby/copyright
libuuidtools-ruby-doc: /usr/share/doc/libuuidtools-ruby-doc/changelog.Debian.gz
libuuidtools-ruby-doc: /usr/share/doc/libuuidtools-ruby-doc/copyright
libuuidtools-ruby1.8: /usr/share/doc/libuuidtools-ruby1.8/changelog.Debian.gz
libuuidtools-ruby1.8: /usr/share/doc/libuuidtools-ruby1.8/copyright
libuuidtools-ruby1.9.1: /usr/share/doc/libuuidtools-ruby1.9.1/changelog.Debian.gz
libuuidtools-ruby1.9.1: /usr/share/doc/libuuidtools-ruby1.9.1/copyright
mingw-w64-dev: /usr/i686-w64-mingw32/lib/libuuid.a
mingw-w64-dev: /usr/x86_64-w64-mingw32/lib/libuuid.a
mingw32-runtime: /usr/i586-mingw32msvc/lib/libuuid.a
pandora-build: /usr/share/aclocal/pandora_have_libuuid.m4
uuid-dev: /usr/lib/x86_64-linux-gnu/libuuid.a
uuid-dev: /usr/lib/x86_64-linux-gnu/libuuid.so
wine1.4-amd64: /usr/lib/x86_64-linux-gnu/wine/libuuid.a

I look at this list and choose uuid-dev

4c. Install the chosen package
user@localhost:~/iperf-3.0b4$ sudo apt-get install uuid-dev

5. Re-run ./configure to confirm success
If no other errors run make to build the tool.

6. user@localhost:~/iperf-3.0b4$ make
Now you can look in the src directory for iperf3 which is a compiled version you can use on the same architure of linux...enjoy the iperf tool

Here is a good site on how to use iperf basics linhost.info/2010/02/iperf-on-windows/. Note: it was written with iperf2 on Windows. Perhaps I will write a quick guide, later, regarding my primary use case for iperf, validating VPN performance.

Monday, December 10, 2012

Proper upstart script for the No-IP DNS Update Client

Updated script again, better error handling and readability. Only looked at it due to a little bit of rebuilding my HTPC which runs this tool.
#!/bin/bash
### BEGIN INIT INFO
# Provides:          noip2
# Required-Start:    networking
# Required-Stop:     networking
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts instance of noip2
# Description:       No-IP DUC (DNS Update Client) start stop service script
### END INIT INFO
#
# copy to /etc/init.d
# run "update-rc.d noip2 defaults" to install
# run "update-rc.d noip2 remove" to remove
#
# Version 1 by Craig Lorentzen
# Version 2 - Added LSB INIT INFO
# Version 3 - Improved error handling and readability
# Version 4 - Added status (to check if the service is running and with what PID

NAME=noip2
PATH=/usr/local/bin
DAEMON=$PATH/$NAME
PID=$(/bin/pidof -s $DAEMON)

do_start()
{
        echo "Starting $NAME."
        echo
        if [ $PID ]; then
                echo "   WARNING: $NAME is already running."
                echo
                PID=
        else
                $($DAEMON)
        fi
}

do_stop()
{
        echo "Stopping $NAME."
        echo
        if [ $PID ]; then
                kill $PID
                PID=
        else
                echo "   WARNING: $NAME is not running."
                echo
        fi
}

do_status()
{
        if [ $PID ]; then
                echo "$NAME is running as $PID"
        else
                echo "$NAME is not running"
                echo
        fi
}

case "$1" in
        start)
                do_start
        ;;
        stop)
                do_stop
        ;;
        restart)
                echo "Restarting $NAME."
                do_stop
                do_start
        ;;
        status)
                do_status
        ;;
        *)
                echo "     Usage: $NAME (start|stop|restart|status)"
                echo
                exit 1
        ;;
esac

exit 0

If you have a No-IP Dynamic DNS account, free at no-ip.com Then you likely want to use the DUC (Dynamic Update Client) to automate the process of keeping it up-to-date. No-IP provides a client for Windows, Mac, and Linux. I have an Linux host running 24x7 at my house, so I decided to try the Linux version.

http://www.no-ip.com/downloads.php?page=linux

This tool used to be in the Ubuntu repositories but has been removed, so No-IP provides the source to be compiled, however, they don't provide a good start script and do not use the upstart method to install the automatic starter. So I decided to create a proper script to follow the upstart method. I understand that this script is not following all LSB standards, however, it should do what people need after following the process that No-IP Provides to compile and install.

Thursday, November 22, 2012

Mac OS X: Disable auto iTunes load on Audio CD insertion

If any of you have been frustrated as I was by not being able to configure iTunes to ignore inserted Audio CDs I have found the solutions. What we do is configure the CD and DVD handling preferences to not load iTunes. Here is how:
Access the 'CDs & DVDs' System Preferences Page
Apple->System Preferences, CDs & DVDs
Original Screenshot:

Now select Ignore for the option when inserting an Audio CD. We can also see that we can accomplish similar changes for DVDs and Picture CDs. Hope this helps others as it helped me.