git-annex devblog (Joey devblog)
day 601 v7 default

With git-annex 7.20190912 released this fine Friday the 13th, I've finally made v7 the default!

See upgrades for details about this major transitition if you have not been keeping up with v7 stuff.

Based on some feedback that it would be good to have a way to avoid accidental upgrades of a repository in some circumstances, there's a new config option git config annex.autoupgraderepository false to prevent upgrades. Since the new git-annex doesn't support working in v5 repos, setting that will make every command except git annex upgrade fail.

Users of rpm based linux distros can now install a git-annex-standalone.rpm package that will work on a broad range of systems. It's based on the standalone tarball, just packaged as a rpm similar to the git-annex-standalone.deb provided by NeuroDebian.

Maggie also
What Mood Stabilizers Feel Like

I used to be purely in favor of doing whatever the doctor wanted without question. Considering part of what messed up with my mental health was that I took myself off a medication that was hurting my liver, though we didn't know that yet, I no longer am trying to go against doctor's orders anymore. But I am not blindly loyal to the medicine either. The new medication I was put on is a mood stabilizer. My mood generally tends towards mania, and now on this medication I have been napping constantly and very low mood lately. I had been spending lots of time exercising, including swimming, prior to hospitalization. Lately, I have trouble finding motivation to do much of anything. Psychosis and mania are pretty extreme emotions. It takes a pretty strong drug to bring me out of these moods I experienced. So adjusting to it seems to be something that is going to take time. On the bright side, I have noticed that exercise is the very thing that I can count on to boost my spirits, and end the gloomy feelings. I walked about an hour and half today, walking my dog, walking to my volunteer activity, walking at my volunteer activity, walking back to my car. So I feel a bit better. Hopefully I will remember that the exercise is necessary for the happiness, and hopefully I can motivate myself to swim or walk lots every day, and some yoga maybe.

In the sadder times, I find new revelations too. I find that I like Kim's Convenience. I find that I feel better when I eat grapes and vegetables and other foods listed to help hurt liver. I also find that I have as much sorrow around this illness as I have gratitude for my supportive people and helpful medical people and pets. There are times when I barely can sit on my front porch because it feels exposed and I feel embarrassed about how I was when ill. Also, how many people do you know who really understand the first thing about schizoaffective disorder type bipolar reality? Or do you think people understand disability? I have been fighting uphill battles for my medicare and medicaid and disability and I think, no, people generally are stupid. Sorry people. There is a huge unwillingness to talk about what has happened to me in general, which honestly is part on my end, because I don't need to explain things to friends who might want to help but end up sometimes doing more harm with their stigma. Then there is a friend who really seems to gaslight me every chance she gets, a friend who it feels like I will always have to have as a friend because she is so close to people I love and I love her too. Life is complicated, yes. People feel fake sometimes. People are uneducated definitely and hilariously unprofessional.

I start keeping a log of unprofessional professionals just for humor. I call my health insurance company to see if I was re-added after wrongfully being terminated. On the other side of the phone line, a woman is very anxiously telling me the story of her living close to the shore and how afraid she is of Dorian coming to her, and how she needs to stock up on water, but likely won't get it in time, and her roommate brother drinks her stuff but won't share his large stash of water with her and her baby. She is going on and on. I have her on speaker phone and my Mom hears and we just are kind of open mouthed in awe. So I ask the most human question I can think up. I say, could you refill some refillable containers. She doesn't seem to be on the same page. She says she would have to buy them first. I am thinking reusable recyclables like old milk jugs. About ten minutes in I feel I have maybe helped calm her a little, but the problem is, I need her help.

This reminds me of the second least professional professional I have noted this month, a case worker who needed to tell me my tastes in Literature are insufficient. I have canceled my follow up appointment since I don't need a case manager after all. But this guy asks me to tell him a favorite author. I guess when I am getting my professional help, I don't like going off topic. But I list 2 poets, Mary Oliver and Rumi. I could have said a lot of others, with varying cultures. Anyway, the case worker then starts talking down American writers, saying I am like his wife who also likes American writers. He likes British writers and names ones I really am uninterested in. I don't mention that Rumi is a sufi mystic (from Afghanistan).

I mean I actually think it is fine for a professional to share personal details, but I was so withdrawn and forlorn and shocked about the whole hospitalization thing. Professionals should be tuned in enough to their clients to perceive these emotions. Maybe save sharing personal opinions and tragedies for, well after the caller mentions why she called, or after you feel the client genuinely might have warmed up to you?

I am resilient. I hope I can figure out how to adjust to the mood stabilizers and all the crap I am dealing with as I used to feel I could do so well.

Maggie also
Wild Coincidence

In the legend of the crow, if you are kind to a crow all the crows become your friend, and someday you might find it is a crow that looks out for you.

Yesterday, we helped a tiny bit with Joey's sumac processing, then swam in the Clinch River. On the way there and back, the Suzuki hit a rock in the long driveway. We also hiked and saw Joey's massive water system. Impressed, we headed home, bumping one more rock on our way down the drive.

We started towards home, the way I like to go, not knowing the road to 11 was closed and there was a detour of sorts. When we got to the end of the road, where the markers blocked further travel, we knew something was wrong with a tire.

I was driving, with Mom in the passenger seat. I pulled over onto what locals call War Road, otherwise known as Clinch Valley Road and later on down it is Robinette Valley. We each got out when I parked and I noticed the huge hissing gash in the tire.

We then found no cell reception for calling Joey or AAA. We packed up getting ready to walk somewhere, when I heard a car traveling our way up War road. I know about one person in Hancock county, Joey, and about another in Hawkins, a Sierra Club veteran named Bill McCabe. Would you believe he was the first person who showed up at the scene?

And he helped like crazy. I hopped in the back of his pickup, while Mom "guarded" the car. He took me to the dump, where another saving grace, Bo Mullins, agreed he would replace our tire. With him came a woman who gave us her spare tire since our donut lacked the right number of bolt holes.

I was a little ready to be home, but considering everything, we lucked out like crazy, meeting my one friend as the first person we saw. I couldn't believe the generosity of all the people involved. Then we were told we could take a different way home to avoid highways until we got to the Gate City Highway. So we took what they called War Creek Road all the way to Harper's Ferry.

Ages ago, I met Bill McCabe in like 2006 when I was living in Hannah Morgan's house in Appalachia Virginia, and she threw a party to introduce a bunch of friends to eachother. Then I got to know him more, when he asked me to hold the other side of his clear sign opposing the Virginia City Coal Fired Power Plant.

He is one of the best people I possibly could have met in the road, and I am glad I knew him back then, and hope he is unscathed after helping us so much.

I also am so so grateful for Bo Mullins and the woman who gave us her spare.

Late Summer, Waters Stay Warm

We were going to harvest sumac,

to scrape chaff from wheat

until our hands dyed red.

But Joey was easy going

so we drove down to the Clinch

to swim in a river whirl pool.

Joey and I swam almost all the way across

through deep waters

and hugged rocks under breaking currents

for a while, while Mom guarded bank glasses

and mulled through mussels.

Passing back was easier.

Currents behind our backs,

we made ourselves into boats.

Then in the car,

two great birds glided in front of us

up towards Joey’s holler.

Little green and great blue.

Somewhere deep in her tides

scarlet sumac powder

still settles

upon some of the richest

diversity of fresh water mussels

on this Earth.

Maggie also
Wrote for Something Else, thought I'd share

I have a mental illness, but usually I am seen as fairly normal. A couple weeks ago, I had to spend a week in a mental ward of a hospital because of a need for medical adjustment that left me psychotic. All of my friends and family gathered trying to figure out my affairs, since I had been successfully managing my medications by myself for 15 years without need for hospitalization.

If I started feeling the woe of the loss that can come with the stigma and extreme difference of place and also disorientation of psychosis, I would lose too much. Instead, I actually look with fondness at the time I had in psychotic break. I don't want to return to psychosis, but when I read Black Elk Speaks, I learned a different perspective about becoming detached from reality.

I learned that psychosis can come as a visionary answer and can bring new perspectives. Everyone said I was sweet in the mental ward and during the time that lead to my hospitalization. And actually that is one major take away I am coming to. Psychosis does not have to be horrific or scary for the people who see it.

As Americans and citizens of the world, we need to remodel how we perceive psychosis. We can't forget to see what can be quite beautiful, and we shouldn't become so romantic about it that we forget to know the pain. The best approach is always to compassionately move forward. So I call my works "Guided Psychosis" with all of that in mind. Every day I see images in the natural world that speak a different sort of language to me. If you want to see a unique and special world, just go into nature with an open heart. Just write a poem. Just trust something that otherwise seems strange.

Maggie also
How I am Feeling

I have progressively been getting to feel better, and I think they are going to give me my Medicare back soon without much more fight. I don't understand the math of why a mood stabilizer was the difference between me and psychotic me, but I think the prolonged high mood/ or mania I was undergoing simultaneously played a part.

I am also still grateful I get to be River's Way's fundraiser, especially since I have a lot of new friends in there. I miss my friends from the psych ward, and it could have been much worse without their kind support. I really couldn't think up a better place to meet likeminded individuals. It is a joke, but also true.

Maggie also
When I was Psychotic

Most people talk about psychotic

as a pure negative,

and everyone seems to have a psychotic ex girlfriend,

but when I was psychotic,

everyone agreed,

I was so sweet.

When Black Elk spoke of "the holy stick that was a tree"

when Black Elk spoke of a man who turned into a bison and ran away

when Black Elk became eagle,

Black Elk was as psychotic as me.

And in his psychosis,

he found a tool to healing,

he found a vision drawn on the sand,

a map that told him where to go.

git-annex devblog (Joey devblog)
day 599 dropping direct mode

Wow, I did not plan to remove direct mode today! The original plan was to work on sqlite database improvements. But that seems to need a v8 repository format, to avoid confusing old git-annex with the new db schemas. And to get to v8, we must first get to v7..

Removing direct mode eliminated over 1000 lines of code. I may be able to remove a few hundred more yet.

Did find a bug with the upgrade process just as I was wrapping up for the day, it's minor (involving a deleted file in the work tree), so I'll deal with it tomorrow.

Maggie also
Sandwich Delivery

The kindest stranger calls straight to the center of the Universe

to order a sandwich

the best damned sandwich ever dreamed.

For a second she catches the sweetest lie ever,

and mulls around the impossibility.

Do fast food restaurants deliver decadent tastes for free?

And maybe all that has to be done is to ask a question,

one single sentence of hopefulness,

deep in the weirdest place any wings ever landed,

there was so much of this wild act of kindness offering.

for Josh

Maggie also
Poems should be Shorter, so...

I hear the leaves outside

try to spell out favorite season words

autumn or fall.

Cooler air hits my nose

so glad I'm home.

Maggie also
In the Uncontrollable

In the uncontrollable moments the doctor called psychosis,

my mind wants to know what is happening,

so it makes up a very complicated story

that I believe until the medicines kick in,

I'm in love with a gay man,

I'm a rubber band ball passing through itself,

like two shooting stars

that will just meet in one strange place,

and the world is beautiful and dark,

until a nurse cracks the door to make sure I'm sleeping,

every 15 minutes they make rounds,

until I pull one inside of my rubber band ball,

and meet father christmas

somewhere in my deep beliefs.

I didn't want to be this way

but at least they said I was sweet this time.

All my family and friends pretending my notes didn't hurt their ears,

playing songs on the recorder on the old front porch,

with my most faithful people lying flat on the floor

to keep me locked in, in front of the door,

mental illness isn't done for the drama,

I just was stuck a little too deep in a dream,

and the longer I stayed up

it took me over entirely

like a run on sentence that would never end.

The nurses swore to me the only thing that could help me then

was the sedatives and strong medicines they shot me with.

I whined at them and said I wasn't hurting anybody,

but I know the nurses always did the best thing for me.

When I used to get psychotic,

it was the worst thing that ever happened.

Now I just want to be stable,

but I am no longer attached to control or afraid of my illness.

I wanted to go forever without returning there,

but I was glad to see improvements when I had to go,

and so many people stepped up for me, so high.

So many people helped me so much.

And honestly, some of the fantasy I told myself,

to survive, helped me make a new friend,

and learn a new favorite sandwich,

and connect with actual peers, like old Jule and April

whom I love and miss so much.

Maggie also
Being Highly Functioning Can be Hard, but I Volunteer

River's Way needs your donation to keep growing and being amazing! I donated just 5 dollars, but if you could think about supporting this very worthy nonprofit organization to help people of differing abilities contribute to their communities, I would love you forever!

River's Way of Bristol, TN is very active as an organization. We have 12 programs and services that we offer inclusively to community members. The hospital cafeteria is one site where youth and young adults with disabilities can learn workforce skills. We work in two garden sites: the Vance Community Garden behind Vance Middle School in Bristol TN and the hoop houses we operate on the grounds of Central Christian Church in Bristol TN. River's Way worked with Bristol Tennessee City Schools and with Bristol Virginia Public Schools to establish Cafe Central in December 2015. Our primary goal is to give students with disabilities the opportunity to develop workforce skills.
The YMCA after school program at the Bristol Family YMCA works with an average of 8-15 youth with disabilities per day and runs from 2-5 p.m. each day, Monday-Thursday. (I regularly have started participating in the YMCA activities. They are so much fun!) The National Center on Health, Physical Activity and Disability promotes walking as the number one physical activity for people of all abilities including those in wheel chairs. The Bristol Public Library hosts our Book Club every Monday from 9:30-11:30 in the Teen Space of the Bristol Public Library. The River’s Way 2019 summer day camp for youth and young adults with differing abilities will run for seven weeks from June 3rd- July 26th. River’s Way teams with student volunteers from Emory and Henry College to host three respite weekends per semester (Fall and Spring) with youth and young adults with disabilities. River's Way provides portable team building programs to local area schools with an emphasis on team skills and workforce development. We offer half-day, full-day, and occasional overnight programs. Activities include hiking, disk golf, and bouldering (rock climbing). Theater provides a great opportunity for youth and young adults with disabilities to show how they can contribute to our community. Each year, Theatre Bristol provides River's Way participants with a chance to perform a play. River's Way partners with the YMCA of Bristol and Tennessee High School Lady Vikings to offer a unique basketball program to youth and young adults of all abilities.

Being in a period of adjustment after my time in the hospital, the staff and everyone at River's Way didn't begrudge me at all. They told me I could come participate and volunteer any day I wanted. I am proud to have a truly inclusive group in my area.

So don't forget to donate a little to keep this all going at River's Way!

Maggie also
So Glad for what I have in life

I imagine there were others in the mental ward, non-nurses or doctors, with four year degrees. But it made me kind of proud and humbled that I achieved some of the things I have in my life inspite of a mental diagnosis.

I felt very much like Siddhartha might have felt when he left the privileged place where he was raised and went out to walk with the people.

I never in my life would have not allowed me to get the degree - my greatest achievement. It was a goal that I set and made half the world struggle with me as I went out like the most determined person in the world to get it. It was so so hard to fight for that 4 year degree in 12 long hard years. But I made a lot of friends along the way.

My friends in the mental ward had parole officers, had done wrong things I know I never would do, had been violent or done drugs or hurt themselves. I am not better than them. But I made my strife for something different. I made my fight for something else. It was for 12 years a degree.

Now I am volunteering for River's Way. I want to help them get better donations so they might help more people. I had other goals, that feel as if they might have been lofty. I wanted to work and take complete control of my life, to be 100 percent independent. Now having seen what I saw in the ward, I know I don't have to.

I have so much more family and friends, in the deepest most wonderful beloved way than any of the people I know, even the nurses. I come from a place of pure helping, and for just a while I would like just to try a little bit harder to be a little bit more grateful in everything I do.

I have been listening to Joe Purdy's Children of Privilege. And it occurs to me oddly that I think I met this man who sings my tune. Once long ago in Berea he might have visited Rheldi Purdy or I am wrong, but if it was him, it could have been because he apparently has Fayetteville connections.

My brother Joey helped me so much. And then if I start naming everyone I just get so many names down and it gets boring on paper to look at. My own professor guide even called me in there and I got to talk to her beautiful husband. I am just so blessed.

releasing two haskell libraries in one day: libmodbus and git-lfs

The first library is a libmodbus binding in haskell.

There are a couple of other haskell modbus libraries, but none that support serial communication out of the box. I've been using a python library to talk to my solar charge controller, but it is not great at dealing with the slightly flakey interface. The libmodbus C library has features that make it more robust, and it also supports fast batched reads.

So a haskell interface to it seemed worth starting while I was doing laundry, and then for some reason it seemed worth writing a whole bunch more FFIs that I may never use, so it covers libmodbus fairly extensively. 660 lines of code all told.

Writing a good binding to a C library has art to it. I've seen ones that are so close you feel you're writing C and not haskell. On the other hand, some are so far removed from the underlying library that its documentation does not carry over at all.

I tried to strike a balance. Same function names so the extensive libmodbus documentation is easy to refer to while using it, but plenty of haskell data types so you won't mix up the parity with the stop bits.

And while it uses a mutable vector under the hood as the buffer for the FFI interface, so it can be just as fast as the C library, I also made functions for reading stuff like registers and coils be polymorphic so easier data types can be used at the expense of a bit of extra allocation.

The big win in this haskell binding is that you can leverage all the nice haskell libraries for dealing with binary data to parse the modbus data, rather than the ad-hoc integer and float conversion stuff from the C library.

For example, the Epever solar charge controller has its own slightly nonstandard way to represent 16 bit and 32 bit floats. Using the binary library to parse its registers in applicative style came out quite nice:

data Epever = Epever
    { pv_array_voltage :: Float
    , pv_array_current :: Float
    , pv_array_power :: Float
    , battery_voltage :: Float
    } deriving (Show)

getEpever :: Get Epever
getEpever = Epever
    <$> epeverfloat  -- register 0x3100
    <*> epeverfloat  -- register 0x3101
    <*> epeverfloat2 -- register 0x3102 (low) and 0x3103 (high)
    <*> epeverfloat  -- register 0x3104
    epeverfloat = decimals 2 <$> getWord16host
    epeverfloat2 = do
        l <- getWord16host
        h <- getWord16host
        return (decimals 2 (l + h*2^16))
    decimals n v = fromIntegral v / (10^n)

The second library is a git-lfs implementation in pure Haskell.

Emphasis on the pure -- there is not a scrap of IO code in this library, just 400+ lines of data types, parsing, and serialization.

I wrote it a couple weeks ago so git-annex can store files in a git-lfs remote. I've also used it as a git-lfs server, mostly while exploring interesting edge cases of git-lfs.

This work was sponsored by Jake Vosloo on Patreon.

Maggie also
out of hospital

I was impressed by the loving care that brought me to the hospital for my mental breakdown and was treated very well inside there. Thank you to all of my new friends from 5 East.

Love, Maggie


List of feeds:

  • Anna: last checked (50 posts)
  • Anna and Mark: Waldeneffect: last checked (4538 posts)
  • Joey: last checked (190 posts)
  • Joey devblog: last checked (226 posts)
  • Jay: last checked (50 posts)
  • Errol: last checked (53 posts)
  • Maggie: Cannot detect feed type (35 posts)
  • Maggie too: last checked (72 posts)
  • Maggie also: Not Found (437 posts)
  • Tomoko: last checked (77 posts)
  • Jerry: last checked (28 posts)
  • Dani: last checked (22 posts)
  • Richard: last checked (43 posts)