Tuesday, May 20, 2025

The Mastodon Client Mona is my current favorite way to browse and post on Mastodon.

I really enjoy easily switching between my accounts too. I have an account to post images with hashtags such as #SilentSunday #Wisconsin #Arena #BirdsOfMastodon #BloomScrolling #DogsOfMastodon #CatsOfMastodon. There is also an account for technical items with hashtags such as #StarWars #Andor #VisionPro #WWDC25 #Apple

The ability to mute a hashtag, or person, for an hour or day or forever is useful. Sometimes there is just a large amount of activity, such as group movie watching and a mute for a few hours is plenty, other times there is an obsession, best avoided with a much longer, or permanent mute.

Bookmarks are useful, when a post catches your eye, but there isn't time to read it immediately.  They are also useful to hang onto a reference you want to share or talk about.

Search is useful, either for a hashtag, or a specific user.

Posts are made easy in Mona. uploading images and adding alt tags works easily.

Sunday, February 12, 2023

Mastodon Clients

​I prefer most of my interactions with Mastodon to be from my phone, so I concentrate my application choices for that platform. I do occasionally use an iPad or macOS machine to get to Mastodon, so preference is given to applications with a macOS option.

Mastodon applications are recent and development has been extremely active, and not yet complete. It is worth selecting showing recent updates. Perhaps avoid choosing an application with no updates for over a year.

Features I am looking for in a client

  • Editing is available
  • easy to view alt text on images
  • easy to add alt tags for pictures
  • long-click to save image
  • edit one of your posts
  • bookmark a post
  • share a post

A web browser will work as a client for Mastodon. This works for iOS, macOS, iPadOS. You can view more information about a mastodon instance by adding 'about' to the end of the URL, such as with https://mastodon.social/about. A browser will also work to follow tags without an account, such as with a tag of 'GardenChat' https://mastodon.social/tags/GardenChat

  • Can do almost everything from the web client.

 Ice Cubes https://apps.apple.com/us/app/ice-cubes-for-mastodon/id6444915884 ( 1.4.7 12Feb2023)

New user experience is basic. Opens to 'Add account' screen in the 'Instance URL' field with a 'Suggestions field below, containing possible instances. There isn't more help in the app with what to do next. It works OK, if you know what you are supposed to do at this point, or if you already have an account.

iPad and iPhone versions of the App. There is limited support on macOS machines running the iPad app on macOS. There is a repository for this software project. https://github.com/Dimillian/IceCubesApp

  • Editing is available
  • easy to view alt text on images
  • long-click to save image ( works some of the time for me )
  • press three dots to edit one of your posts
  • bookmark a post
  • share a post
  • easy to add alt tags for pictures, click on a picture and 'Add description'
  • See an indication of conversations

Ivory for Mastodon https://apps.apple.com/us/app/ivory-for-mastodon-by-tapbots/id6444602274 (1.0.2 7Feb2023)

New user experience is welcoming. Opens to a screen welcoming you. There is an up arrow to get to the next screen, where it wants an instance name, however a question is asked about whether you already have an account or not. If you don't have an account you are sent off the JoinMastodon.org and Instances.social.

If you do already have an account you enter the account and press the Continue button.

iPad and iPhone versions of the App

  • Profile edit is available within the application.
  • Translation available with downloaded languages. Select text in post, then translate is an option. Can open in the translate app.
  • click image to save
  • MISSING - view alt-text on photos (can't find it, or it isn't there?)
  • MISSING - Edit a post (can't find it, or it isn't there?)

Toot! for Mastodon https://apps.apple.com/us/app/toot-for-mastodon/id1229021451 (19.0 8Feb2023)

Opens to a Welcome to Mastodon! screen. There is a lot of small text, but it tries to get you to a next step. There is a watch the video link taking you to a YouTube video 'What is Mastodon' The video tries to explain how everything works. https://youtu.be/IPSbNdBmWKE. There is then a 'Choose a Server' text button which takes you to a screen with a field to enter an server instance address and another field where you can ask to see some random server, which you can then use to enter as a server.

iPad and iPhone versions of the App

  • Excellent indication of conversations
  • click on an image to see alt-text, swipe up to make it go away. no indication on the picture that alt-text is present
  • edit is available from three dots, or 'more' text button
  • long press to save an image
  • share a post using the 'more…' button
  • easy to add alt-text, can also adjust attention-point of a picture


What to do with Mastodon and how to do it

​Many new mastodon users migrated from twitter recently. This made me think back to what I used to use twitter for when twitter first started and third-party twitter apps started to appear. There were ups and downs then.

There will be ups and downs with Mastodon.

Things to do with Mastodon 


Go to a conference, convention, show and comment with others about what you see. Hashtags is a convenient way to do this. #WiGardenExpo and #GardenChat is what I picked to try out going to a Garden Expo and commenting about a few things I saw.

It was best to have a bit of text and a picture for places I stopped. I was attending with a couple of other people, so I didn’t have unlimited time for each stop.

I wanted to make sure there were alt tags for pictures. I sometimes forgot to add tags for a posting, so being able to edit a posting was a welcome option. I wasn’t able to figure out how to edit from every app I tried.

The client applications are young, and have frequent updates, so if a feature isn’t currently available it may show up in a future update.

I could post pictures by selecting from my local album. I like to also be able to copy a picture and paste it into a posting. One of the applications I was using had a temporary bug, where it pasted a link to the picture on the local device, instead of an actual picture. I believe that has been fixed now. As I said, the applications are not yet mature, there will be changes.

I will add more on specific applications. I need to have separate lists for iOS, iPadOS, macOS, Web Browser.

I tend to do most of my mastodon posting and reading from iOS, as that is the device I have with me.

Monday, March 2, 2020

Library - in a Temperature Controlled Storage Unit

I have a friendly collection of books, without quite enough space to store them. I decided on an easy-to-access temperature controlled storage unit at Black Earth Storage, in Black Earth, WI Black Earth Storage (608)644-6151 1527 State Street
Black Earth, Wisconsin 53515.

I go by twice a day on my way to and from work, so it is extremely easy to pick up or drop off a book. There is 24-hour a day access, and I am able to park right next to the door for easy loading and unloading. There is a gas station right next door, so it is also conveniently when I have to fill-up my car. I should have thought of this a long time ago.

I am able to rotate books from storage to my home book shelves depending on my projects and the season. It is almost time for me to rotate gardening and travel books back home to prepare for spring.

Wednesday, January 17, 2018

macOS High Sierra remote reboot encrypted drive

When you reboot a macOS computer with an encrypted drive, you must login to unlock the volume before the boot process can complete. This creates a problem if you are working remotely.

The solution is to add a key temporarily in memory to make it through the reboot process.

Is FileVault on? If off, you don’t have to do any of this.

$ sudo fdesetup status
FileVault is On.

Does your hardware support authrestart? If not, this doesn’t help.

$ fdesetup supportsauthrestart
true

Turn on authrestart, but don’t reboot yet.

$ sudo fdesetup authrestart -delayminutes -1

The old prompt wants a recover key or an admin password? confusing question. This was changed in the current OS to ask for a username of a user who is authorized to unlock the drive.

Enter a password for '/', or the recovery key: # enter the admin password, or the internal drive key

The new version asks for a username and then a password

$ sudo fdesetup authrestart -delayminutes -1
Password:
Enter the user name:support
Enter the password for user 'support':

other useful commands

list of users who are able to unlock a FileVault volume.

$ sudo fdesetup list

Wednesday, November 22, 2017

back to work

Time to start updating again. Lots to talk about. Thank You Everyone. :)

Friday, May 10, 2013

MarsEdit Blogger Software for OS X

Testing MarsEdit to see if it will make it easier to post to this blog.

Monday, August 1, 2011

OSX Lion

Library folder not visible, changed by the operating system.

Instructions to change this behavior
http://gregferro.com/osx-lion-library-folder-not-visible/

Open the Terminal and type:
chflags nohidden /Users/[username]/Library/

Wednesday, July 6, 2011

gitosis

osx how to install gitosis
http://sitaramc.github.com/gitolite/doc/1-INSTALL.html
back on the gitolite track

as root do the following:

root method

On your workstation:

copy your ~/.ssh/id_rsa.pub file to /tmp/YourName.pub on the server
On your server, as root:

git clone git://github.com/sitaramc/gitolite
cd gitolite
src/gl-system-install
# defaults to being the same as:
# src/gl-system-install /usr/local/bin /usr/local/share/gitolite/conf /usr/local/share/gitolite/hooks

# to upgrade gitolite, repeat the above commands. Make sure you use the
# same arguments for the last command each time.

# create your "hosting user" if not already created
useradd git

su - git

# (now as git)
gl-setup /tmp/YourName.pub
On your workstation:

git clone git@server:gitolite-admin

Note: things to look for:

The git user has to have ssh login ability, you may have to turn that on in the GUI, system preferences --> Sharing remote access

had to add a file for the git user:
.bashrc

containing:
$ cat .bashrc
export PATH=:/usr/bin:/usr/local/bin:$PATH:
#export PATH=$(git --exec-path):$PATH

export GIT_EXEC_PATH=/usr/libexec/git-core

# get the path with $ git --exec-path





6July2011

needed help from this source too
http://www.justlogged.com/Question/1/5041067/4e549dc7aa65302b9e71c9941b815058/show

ran the following command (running google's binary install of git:
$ git --exec-path
/usr/libexec/git-core


my .bashrc file now looks like this

$ cat .bashrc
export PATH=:/usr/bin:/usr/local/bin:$PATH:
#export PATH=$(git --exec-path):$PATH

export GIT_EXEC_PATH=/usr/libexec/git-core


also important, I used the GUI in Snow Leopard 10.6.8 to create the git user. The git user is not an administrator, therefore they were blocked from ssh, I had to manually add them to the users who could ssh in system preferences sharing.


instructions that worked from this source
http://lukhnos.org/blog/en/archives/162

  1. create in system preferences a user git, make the user an admin for a short while, undo this later
  2. create a group git, and add the user to the group
  3. for convenience, I also created a gitosisadmin admin user. (why? was this needed? perhaps to avoid making the git user admin and then removing it requiring a reboot.)

  4. login as the gitosisadmin user and download gitosis.

    ssh -l gitosisadmin localhost
    $ which python
    /usr/bin/python
    $ which git
    /usr/bin/git
    $ pwd
    /Users/gitosisadmin


    $ git clone git://eagain.net/gitosis.git
    $ cd gitosis/
    $ sudo python setup.py install


  5. create key if you don't have one

    ssh-keygen -t rsa


  6. copy key to a temp location so git user can read it
    cp ~/.ssh/id_rsa.pub /tmp/my_key.pub

  7. $ sudo -H -u git gitosis-init < /tmp/eabolden.pub Initialized empty Git repository in /Users/git/repositories/gitosis-admin.git/ Reinitialized existing Git repository in /Users/git/repositories/gitosis-admin.git/






  8. may need this:
    make sure post update hook is executable.

    sudo chmod 755 /Users/git/repositories/gitosis-admin.git/hookspost-update







  9. from a different account clone the admin repository

    $ git clone git@your.server.com:gitosis-admin.git
    Cloning into gitosis-admin...
    bash: gitosis-serve: command not found
    fatal: The remote end hung up unexpectedly



    tried reinstalling...
    saw this error:
    Searching for setuptools==0.6c12dev-r85381
    Reading http://pypi.python.org/simple/setuptools/
    Reading http://peak.telecommunity.com/snapshots/
    No local packages or download links found for setuptools==0.6c12dev-r85381
    error: Could not find suitable distribution for Requirement.parse('setuptools==0.6c12dev-r85381')


    used solution from: http://www.errorhelp.com/search/details/74034/importerror-no-module-named-setuptools

    wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
    $ tar xfvz setuptools-0.6c11.tar.gz
    $ cd setuptools-0.6c11
    python setup.py build
    sudo python setup.py install






  10. Notes


    The following can be done with the osx gui

    list users and uid
    $ sudo dscl . list /Users kid
    list groups and group id
    $ sudo dscl . list groups did
    delete user username
    $ sudo dscl . -delete /Users/username
    delete group groupname
    $ sudo dscl . -delete /groups/groupname

    manually create group commandline
    sudo dscl . create groups/git
    sudo dscl . create groups/git did 401

    manually create user commandline
    sudo dscl . create users/git
    sudo dscl . create users/git uid 401
    sudo dscl . create users/git NFSHomeDirectory /Users/git
    sudo dscl . create users/git gid 401
    sudo dscl . create users/git UserShell /bin/bash
    sudo dscl . create users/git Password '*'

    create home directory
    sudo mkdir /Users/git
    sudo chown git /Users/git
    sudo chgrp git /Users/git






    ********************
    not sure if this next part is necessary

    $ cat .bashrc
    #export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/git/bin:$PATH

    export PATH=/usr/local/bin:/usr/local/git/bin:$PATH

create in system preferences a user git, make the user an admin for a short while, undo this later create a group git, and add the user to the group for convenience, I also created a gitosisadmin admin user. login as the gitosisadmin user and download gitosis. ssh -l gitosisadmin localhost $ which python /usr/bin/python $ which git /usr/bin/git $ pwd /Users/gitosisadmin $ git clone git://eagain.net/gitosis.git $ cd gitosis/ $ sudo python setup.py install create key if you don't have one ssh-keygen -t rsa copy key to a temp location so git user can read it cp ~/.ssh/id_rsa.pub /tmp/my_key.pub $ sudo -H -u git gitosis-init < /tmp/eabolden.pub Initialized empty Git repository in /Users/git/repositories/gitosis-admin.git/ Reinitialized existing Git repository in /Users/git/repositories/gitosis-admin.git/ make sure paths work correctly with remote connections $ echo "export PATH=$PATH" > ~/.bashrc add to the .bashrc file, export PATH=$(git --exec-path):$PATH it should look like: export PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin export PATH=$(git --exec-path):$PATH make sure post update hook is executable. sudo chmod 755 /Users/git/repositories/gitosis-admin.git/hookspost-update from a different account clone the admin repository $ git clone git@your.server.com:gitosis-admin.git Cloning into gitosis-admin... bash: gitosis-serve: command not found fatal: The remote end hung up unexpectedly tried reinstalling... saw this error: Searching for setuptools==0.6c12dev-r85381 Reading http://pypi.python.org/simple/setuptools/ Reading http://peak.telecommunity.com/snapshots/ No local packages or download links found for setuptools==0.6c12dev-r85381 error: Could not find suitable distribution for Requirement.parse('setuptools==0.6c12dev-r85381') used solution from: http://www.errorhelp.com/search/details/74034/importerror-no-module-named-setuptools wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz $ tar xfvz setuptools-0.6c11.tar.gz $ cd setuptools-0.6c11 python setup.py build sudo python setup.py install wget wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c8.tar.gz#md5=0e9bbe1466f3ee29588cc09d3211a010 tar xfvz setuptools-0.6c8.tar.gz cd setuptools-0.6c8 python setup.py build sudo python setup.py install OLD Tries side note, gitolite next try use from here: https://github.com/sitaramc/gitolite/blob/pu/doc/1-INSTALL.mkd sudo /usr/bin/python setup.py install had the following error: ImportError: No module named setup tools used solution from: http://www.errorhelp.com/search/details/74034/importerror-no-module-named-setuptools wget wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c8.tar.gz#md5=0e9bbe1466f3ee29588cc09d3211a010 tar xfvz setuptools-0.6c8.tar.gz cd setuptools-0.6c8 python setup.py build sudo python setup.py install Notes The following can be done with the osx gui list users and uid $ sudo dscl . list /Users kid list groups and group id $ sudo dscl . list groups did delete user username $ sudo dscl . -delete /Users/username delete group groupname $ sudo dscl . -delete /groups/groupname manually create group commandline sudo dscl . create groups/git sudo dscl . create groups/git did 401 manually create user commandline sudo dscl . create users/git sudo dscl . create users/git uid 401 sudo dscl . create users/git NFSHomeDirectory /Users/git sudo dscl . create users/git gid 401 sudo dscl . create users/git UserShell /bin/bash sudo dscl . create users/git Password '*' create home directory sudo mkdir /Users/git sudo chown git /Users/git sudo chgrp git /Users/git

installing Chilliproject offshoot of Redmine

I am hoping to link Chilliproject with gitosis to manage a git repository with web uploads of keys.

https://www.chiliproject.org/projects/chiliproject/wiki/Installation

needed to update to a specific version of rails

$ sudo gem update rails --version='2.3.12'


get a copy of ChiliProject

git clone git://github.com/chiliproject/chiliproject.git
cd chiliproject
git checkout stable


After getting the code, needed to install supporting gems using the following, after installing postgressql83 with macports, could have avoided some of this, by specifying I was not using postgressql.


$ sudo port install postgresql83
$ env ARCHFLAGS="-arch x86_64" bundle install


other notes:


$ sudo port install postgresql83

http://www.icoretech.org/2009/08/how-to-install-pg-postgresql-gem-on-snow-leopard-64-bit/
Install PostgreSQL from source/port for this, does not currently build against binary package.
PATH should be /usr/local/pgsql.

export PATH=/usr/local/pgsql/bin:${PATH}
env ARCHFLAGS="-arch x86_64" gem install pg
Or if you are using macports:

export PATH=/opt/local/lib/postgresql83/bin:${PATH}
env ARCHFLAGS="-arch x86_64" gem install pg


$ sudo gem install rmagick
Password:
Fetching: rmagick-2.13.1.gem (100%)
Building native extensions. This could take a while...
Successfully installed rmagick-2.13.1
1 gem installed
Installing ri documentation for rmagick-2.13.1...
Installing RDoc documentation for rmagick-2.13.1...
~ $ irb -rubygems -r RMagick
>> puts Magick::Long_version
This is RMagick 2.13.1 ($Date: 2009/12/20 02:33:33 $) Copyright (C) 2009 by Timothy P. Hunter
Built with ImageMagick 6.6.9-1 2011-05-07 Q16 http://www.imagemagick.org
Built for ruby 1.8.7
Web page: http://rmagick.rubyforge.org
Email: rmagick@rubyforge.org

$ rake db:migrate RAILS_ENV="production"

fix for generate session store problem.

$ rake generate_session_store


Monday, July 4, 2011

OS X print to PDF functionality

Print to a pdf file, going to a known location, acting as a default printer.


https://bitbucket.org/codepoet/cups-pdf-for-mac-os-x/downloads


Download and install this software:
https://bitbucket.org/codepoet/cups-pdf-for-mac-os-x/downloads/CUPS-PDF%202.5.0%20Installer.zip

Create a printer, selecting the cups pdf printer.

This works very well.

Thursday, June 23, 2011

gitolite - couldn't make it work with more than one person, switching to gitosis

I wanted github, but I need to keep my repository local, so I needed to roll my own. My last experiment with this used gitosis, but it looks like gitolite is a little more active now, and I hope has better documentation.

If you do something wrong and need to reinstal git.
https://github.com/sitaramc/gitolite/blob/pu/doc/1-INSTALL.mkd

uninstalling


cleaning out a botched install
When people have trouble installing gitolite, they often try to change a bunch of things manually on the server. This usually makes things worse ;-) so here's how to clean the slate.

client-side
edit ~/.ssh/config and delete the paragraph starting with host gitolite, if present.
remove ~/gitolite-admin
server-side
edit ~/.ssh/authorized_keys and delete all lines between # gitolite start and # gitolite end inclusive.
remove ~/.gitolite, ~/.gitolite.rc and ~/repositories/gitolite-admin.git

uninstalling gitolite completely
There's some duplication between this and the previous section, but uninstalling gitolite is described in great detail in doc/uninstall.mkd


I installed gitolite and then used bits from the following to configure and start using it.

Some References
upgrading to gitolite from gitosis

fix for error No refs in common and none specified doing nothing

I grabbed a copy of the admin repository

git clone ssh://git@SERVER:gitolite-admin


and I edited the file

gitolite-admin/conf/gitolite.conf

git status from within the gitolite-admin directory on my machine, showed the modifed file
git add .
git commit -m "added repo ericnotes"
git push

this modified the file, added the changes and committed them to the local git repo, then pushed them to my remote repository.


I added an ericnotes repository

repo gitolite-admin
RW+ = eabolden

repo testing
RW+ = @all

repo ericnotes
RW+ = eabolden


I then went to clone the new repository to give myself a local copy

git clone git@yourserveraddress:ericnotes


I them made some changes (added a file to the empty directory, git add ., then git commit -m "initial file commit" to save to local git repository

I then tried to push the file, and it failed, with a few different error messages.

the fix was to use the following.

git push --all



Repeat steps to practice again.

added the following to the gitolite.conf file
repo playarea
RW+ = eabolden

~/work $ cd gitolite-admin/
~/work/gitolite-admin(master) $ ls
conf keydir
~/work/gitolite-admin(master) $ git status
# On branch master
# Changes not staged for commit:
# (use "git add ..." to update what will be committed)
# (use "git checkout -- ..." to discard changes in working directory)
#
# modified: conf/gitolite.conf
#
no changes added to commit (use "git add" and/or "git commit -a")
~/work/gitolite-admin(master) $ git add .
~/work/gitolite-admin(master) $ git commit -m "added playarea repo"
[master 06adde2] added playarea repo
1 files changed, 3 insertions(+), 0 deletions(-)
~/work/gitolite-admin(master) $ git push
Warning: No xauth data; using fake authentication data for X11 forwarding.
Counting objects: 7, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (4/4), 369 bytes, done.
Total 4 (delta 1), reused 0 (delta 0)
remote: creating playarea...
remote: Initialized empty Git repository in /Users/git/repositories/playarea.git/
To git@yourserver:gitolite-admin
29e077c..06adde2 master -> master

$ git status
# On branch master
nothing to commit (working directory clean)

~/work $ git clone git@yourserver:playarea
Cloning into playarea...
Warning: No xauth data; using fake authentication data for X11 forwarding.
warning: You appear to have cloned an empty repository.
~/work $

$ touch testdoc.txt
~/work/playarea $ git add .
~/work/playarea $ git commit -m "initial commit"
[master (root-commit) 8a7328b] initial commit
0 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 testdoc.txt
~/work/playarea(master) $ git status
# On branch master
nothing to commit (working directory clean)
~/work/playarea(master) $ git push --all
Warning: No xauth data; using fake authentication data for X11 forwarding.
Counting objects: 3, done.
Writing objects: 100% (3/3), 214 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
To git@yourserver:playarea
* [new branch] master -> master


Now things should be working as expected:


~/work/playarea(master) $ touch document2.txt
~/work/playarea(master) $ git add .
~/work/playarea(master) $ git commit -m "added second doc"
[master c8cf756] added second doc
0 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 document2.txt
~/work/playarea(master) $ git status
# On branch master
# Your branch is ahead of 'origin/master' by 1 commit.
#
nothing to commit (working directory clean)
~/work/playarea(master) $ git push
Warning: No xauth data; using fake authentication data for X11 forwarding.
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 246 bytes, done.
Total 2 (delta 0), reused 0 (delta 0)
To git@yourserver:playarea
8a7328b..c8cf756 master -> master
javascript:void(0)

Thursday, May 19, 2011

NOTE: Gem::Specification#default_executable= is deprecated with no replacement. It will be removed on or after 2011-10-01.

How to get rid of the error message:


NOTE: Gem::Specification#default_executable= is deprecated with no replacement. It will be removed on or after 2011-10-01.


after doing a:

sudo gem update --system


I just ran the following manually,

gem -v 2>&1 |grep called


and then for each gem returned ran the command,


$ sudo gem pristine rcov -- -build-arg


The sudo part may not be required, I was using an upgraded basic install from Apple.

Example:

~ $ gem -v 2>&1 |grep called
Gem::Specification#has_rdoc= called from /Library/Ruby/Gems/1.8/specifications/actionmailer-2.3.5.gemspec:14.

$ sudo gem pristine actionmailer -- -build-arg
...
Restored actionmailer-3.0.7



#!/usr/bin/env bash
#

brew install gnu-sed
sudo gem pristine --all --no-extensions
gems=$(gem -v 2>&1 | grep called | gsed -r -e 's#^.*specifications/##' -e 's/-[0-9].*$//')

for gem in $gems
do
echo Fixing $gem...
sudo gem pristine $gem -- -build-arg
done


install a specific version of a gem

gem install rake --version=0.8.7


Thanks to the postings at:
http://stackoverflow.com/questions/5949521/how-do-i-fix-rubygems-recent-deprecation-warning

Friday, May 13, 2011

ebooks converting to epub format notes

Convert almost any document format to the epub format for reading on an iPad.

http://calibre-ebook.com/ Donation supported project. works


http://www.juliansmart.com/ecub#mac have not tested this one yet.

Sunday, February 13, 2011

old notes git

listing git branches.
git branch -a

20 Jan 2009
http://blog.kortina.net/post/71935540/fix-git-not-currently-on-any-branch-problem

Fix git “Not currently on any branch” Problem

This is quite geeky (goodies linked later :), but I want to post so I can find this fix later and because I didn’t see a whole lot of others posting about this problem, so others may find it useful as well.

I did a
git svn rebase
To update a local repo with changes from the master svn repository.

There was a conflict, and after resolving I ended up in the “Not currently on any branch” state.

To resolve,
git commit -a -m “commit merge with svn to head”
git checkout -b merged_with_svn
git checkout original_branch
git merge merged_with_svn

Hopefully someone else will find this useful. Otherwise, fear not—goodies!

Listen:
http://bit.ly/oMaria
http://bit.ly/ericsTrip


also, http://bit.ly/cheatGit

Thursday, January 20, 2011

Ruby Simple Statistics adding standard deviation

Ruby Simple Statistics - Standard Deviation





>> data
=> [1, 2, 3, 4, 5, 6]
>> data.class
=> Array


An array of numbers in ruby, (an Array object), can return the size/length, minimum (min) value, maximum (max) value. Missing methods are average, sample_variance, standard_deviation. These can added using an Enumerable module mixins.


Enumerable module mixins - add standard deviation to all arrays etc.


# Add methods to Enumerable, which makes them available to Array
module Enumerable

# sum of an array of numbers
def sum
return self.inject(0){|acc,i|acc +i}
end

# average of an array of numbers
def average
return self.sum/self.length.to_f
end

# variance of an array of numbers
def sample_variance
avg=self.average
sum=self.inject(0){|acc,i|acc +(i-avg)**2}
return(1/self.length.to_f*sum)
end

# standard deviation of an array of numbers
def standard_deviation
return Math.sqrt(self.sample_variance)
end

end # module Enumerable



Example Useage


# enter an interpreted ruby session to play with this:

$ irb
# create a new array called data with six numbers in it

>> data = [1, 2, 3, 4, 5, 6]
=> [1, 2, 3, 4, 5, 6]

>> data.class
=> Array

# try running the following commands. Some will work, some require the module from above.

>> data.sum
=> 21

>> data.size
=> 6

>> data.min
=> 1

>> data.max
=> 6

>> data.average
=> 3.5

>> data.sample_variance
=> 2.91666666666667

>> data.standard_deviation
=> 1.70782512765993



References

  1. ruby inject blogbackground on inject.
  2. see notes for mixins for Enumerable adding standard_deviation to Enumerable
  3. ruby core documentationSee Module Enumerable and Class Enumerable::Enumerator

mysql notes

reminders for some mysql tasks.

Dump a database to a file and compress it.

mysqldump -u root study_manager_development > study_manager_development.sql

gzip -v study_manager_development.sql


Select to outputfile

select id,sku, from line_items where sku LIKE '%u123%' into outfile '/tmp/u123.txt';

Saturday, January 8, 2011

OS X, iOS, MacOS X - PDF Documents in Teaching Annotations and Full Screen Viewing

in progress 8Jan2011...

Want to be able to teach from a PDF document, click on links in the document, add annotations while presenting, have the PDF displayed full-screen. I am looking at those options now.


  1. Preview - included with MacOS X, you can present a pdf document full-screen in slideshow mode. View --> Slideshow. Editing is not available in this mode.
  2. Skim - Presentation and full-screen menu options are available.
  3. PDF Studio
  4. PDFPen
  5. Keynote - You can't present and edit at the same time, However you can place and resize several different pdfs at the same time, adding highlights, building out a page and presenting full screen with different themes available.
  6. iOS iPad GoodReader is an option with a VGA cable.
Preview Menu:



Skim Menu:


Thursday, December 23, 2010

Rserve

ruby rserve client


$ sudo gem install rserve-client
$ irb
>> require 'rserve'
>> a = Rserve::Connection.new

>> y = a.eval('2 + 2').to_ruby
=> 4.0


http://www.rforge.net/Rserve/doc.html

http://www.rforge.net/Rserve/files/

download the current osx binary, then install using a command similar to:


$ R CMD INSTALL /Users/eabolden/Downloads/Rserve_0.6-3.tar


Get the source code, not the OSX binary if you are using R64.







$ R CMD INSTALL /Users/eabolden/Downloads/Rserve_0.6-3.tar

Start Rserve with the command

$ R CMD Rserve

R version 2.12.1 (2010-12-16)
Copyright (C) 2010 The R Foundation for Statistical Computing
ISBN 3-900051-07-0
Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

  Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

Rserv started in daemon mode.

View Rserve settings


$ R CMD Rserve --RS-settings
WARNING: ignoring environment value of R_HOME
Rserve v0.6-3

config file: /etc/Rserv.conf
working root: /tmp/Rserv
port: 6311
local socket: [none, TCP/IP used]
authorization required: no
plain text password: not allowed
passwords file: [none]
allow I/O: yes
allow remote access: no
control commands: no
interactive: yes
max.input buffer size: 262144 kB



Note:

If no config file is supplied, Rserve accepts no remote connections, requires no authentication and file transfer is enabled. For more details about how to configure Rserve, see below.

Configuration
Rserve is configured by the configuration file /etc/Rserv.conf (can be changed at compile time by specifying -DCONFIG_FILE=..). Additional configuration files can be added by the --RS-conf command line argument. The possible configuration entries are as follows (all entries are optional; default values are in angled brackets):