- First tried creating manually, using
https://github.com/AppImage/docs.appimage.org/blob/master/source/packaging-guide/manual.rst and the AppRunx86-64 from https://github.com/AppImage/AppImageKit/releases - Found and copied the libs it uses by doing the following to copy all shared libraries -https://www.commandlinefu.com/commands/view/10238/copy-all-shared-libraries-for-a-binary-to-directory
ldd file | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' /destination - Need to use the environment variable $OWD (Original Working Directory) to get files from the OWD, like our ini file. This code snippet was a good template, https://stackoverflow.com/questions/40306012/c-using-environment-variables-for-paths
char* pPath;
pPath = getenv("PATH");
if (pPath)
std::cout << "Path =" << pPath << std::endl;
return 0; - Many libs copied with the manual method had to be excluded using the excludelist at
https://github.com/AppImage/pkg2appimage/blob/master/excludelist - Still did not work on newer distros. In this thread, probono recommended using trusty on TravisCI for building, and linuxdeployqt instead of manual creation of AppDir. Did that, and it worked. Far fewer libs are bundled by linuxdeployqt. Lists of the two bundles are available at this issue thread.
- The download link from transfer.sh can be seen if the entire log is downloaded from TravisCI.
- The travis yml file gives the outline of the build and bundling process.
Mostly work related stuff which I would've entered into my "Log book". Instead of hosting it on an intranet site, outsourcing the hosting to blogger!
Friday, April 05, 2019
creating an AppImage to distribute Linux binaries
Thursday, April 04, 2019
USB drive reported as read only - solution
Corruption could cause this, so tried
sudo dosfsck -a /dev/sdc1
That did not help. Though the CLI is able to write to it, Nemo still complains it is read-only.
Apaprently the fix is at https://forums.linuxmint.com/viewtopic.php?t=176546
So everything needed to fix the issue is to execute:
sudo chmod 777 /media/USERNAME
And/or maybe a reboot?
When I faced this issue today, I rebooted the system, and then the USB drive was mounted read/write.
Wednesday, April 03, 2019
transparent proxy over ssh - sshuttle
sshuttle --dns -r username@ip.address.of.machine 0.0.0.0/0
will transparently proxy all dns requests as well as all traffic through the remote machine. Only python needs to be installed on the remote machine.
Wednesday, March 27, 2019
reducing pdf size from the commandline
https://unix.stackexchange.com/questions/274428/how-do-i-reduce-the-size-of-a-pdf-file-that-contains-images
using gs,
gs -sDEVICE=pdfwrite -dPDFSETTINGS=/ebook -q -o output.pdf file.pdf
Tuesday, March 19, 2019
Fedex (India) - expectation vs reality
1. I get a phone call on Saturday, 23 Feb 2019, that my shipment is due to arrive the next day, and I need to submit the required documents. Since I had already submitted my "one time only" Know Your Customer (KYC) documents last year, I thought this would be a breeze. I was wrong.
2. The form I had to fill in this year was different from last year's. (My printer was on the blink, so I had to trek all the way to another office, 15 minutes away, in order to print all the new documentation that had been requested.) The documents requested would probably change again, so it may not be worthwhile documenting them, but just for completeness:
· KYC Form along with supporting documents – DULY SELF ATTESTED {signed & stamped} (KYC is mandatory and is a 1 time requirement)
· PAN copy,
· Aadhar Card & Voter ID card
· Address proof. (Telephone /Electricity Bill/Bank Statement/ Rental Agreement )
· AD code ( Authorized dealer code from Bank)
· DUMMY IEC LETTER
· Gatt and DGFT declaration ( Attached )
· Technical write up & INDIVIDUAL NET WEIGHT FOR ALL ITEM to prepare Advance checklist
3. At first, the Fedex rep on the phone told me that "since the item has come in cargo mode" it was mandatory that I have an IEC code - which is an Import-Export code for importers. She told me to find out from my organisation if I can import under their IEC, saying that individuals cannot import. Though I tried telling her that I had imported items in the past, she said it was impossible. Luckily, as it turns out, there was a delay in getting hold of the head of operations at our institution. In the meantime, Fedex called me again, saying that it would be possible, using something known as a dummy IEC, the request for which was listed in the above list.
4. Then there was Sunday - a day of rest - and no communications from Fedex.
5. On Monday, there were a flurry of 17 emails. Fedex did not accept my Voter ID as address proof. Only one of the items listed above. And AD code - I thought that since I am not an authorized dealer, I need not submit. But I was wrong. Apparently this is the AD code of the forex section of the bank. Even the bank manager did not know this, and this led to another day of delays.
Expectation - if someone from Fedex had explained this to me, I would have done it immediately.
Reality - I got the same "form" email from Fedex which I received earlier, so I just wrote back saying that I have already submitted the documents. So, this led to a one-day delay in filing the Bill of Entry (BoE) and thus a Rs. 5000 fine. Which has to be paid by me, of course. And even after receiving the AD code, there was some confusion - I got an email saying that the AD code is not valid. I again contacted the bank. The bank said it was valid. Then Fedex confirmed that the AD code was valid, it was the wait for permission to use dummy IEC which was causing the delay.
6. On Tuesday, I got an email with approval list for BoE filing, from jeena.co.in, Fedex India's clearing agents. I filled it up and returned it within 15 minutes. Then came the long wait, 26 Feb to 1 Mar. No intimation from Fedex or Jeena as to what is happening. I tried calling all the numbers available. No one picks up. Calling the toll-free numbers gets me an agent who speaks very soothingly, saying that Mr. (name) is in charge of clearing this package, they will inform him to get in touch with me. But Mr. (name) does not contact me. At all. Ever.
Expectation - if someone from Fedex or Jeena had explained that it would take a week or two for customs to clear it, I would have waited patiently. At the very least, someone should pick up the phone.
Reality - Either the staff are so over-worked and harassed by customers that they cannot bear to pick up calls, or they just stopped caring long ago.
7. On 1st March, I was asked to submit any or all of the following, for value evidence:
1) Internet price
2) Supplier price list
3) Previous BOE,which cleared earlier with same Item
4) If payment is made Bank remittance.
I did so.
8. Again a looong silence. On Mar 7, late in the evening, I get an email, asking for technical writeup. Technical writeup had been submitted in the first batch of documents. Anyway, I again edit that writeup, add a couple of lines, and submit along with all the SLED documentation in the supplier's website.
9. Silence again, till 13 Mar. Now, I am asked to pay the customs duty directly using the ICEGATE website, and to provide "E-way bill". Since I am an individual and not a company, I was not sure if I could do these things. Called up the toll-free. They said they will ask their people to call me and guide me. They never called. I googled, found the ICEGATE website, paid using the details like Challan number supplied by Jeena. But according to various internet sources, individuals need not file E-way bill unless they are transporting high-value goods in their own vehicle. Again write to Fedex, no reply. Again call toll-free. Again they tell me that they will ask their rep to contact me. They do not do so.
Expectation - when the customer asks for help, someone tries to help.
Reality - The toll-free operators either are not allowed to, or not able to, help. The customs clearance people are either overworked or not bothered.
10. 14 Mar - called up Jeena - the executive picked up! That itself was half the battle won. I mentioned that I'm an individual, not a company. Immediately he said, in that case, just send me a letter saying so, no E-way bill required. So, again I sent an email saying just that. And that evening, I get the automated Fedex tracking email, shipment released for delivery.
11. I thought I had paid all that was necessary, but wanted to make sure. Called Fedex toll-free to check. On 15th morning, they said please call back by 15th evening, because some documents may take time to be uploaded into their system. On 15th evening, I call, they say nothing to be paid. On 16th morning, I get a call from Fedex delivery agent, saying I need to pay Rs. 7000 for delivery. Again I call the toll-free number. They tell me that though it is not yet mentioned on their system, it is possible that the clearance charges are what I am expected to pay.
Expectation - clear intimation of what is to be paid, with an emailed invoice in advance.
Reality - confused signals. Nobody knows anything.
12. Part of the problem is the expectation. With services like India Post, you know that there is no one to call to ask for updates, you expect delays, you don't expect any email updates. But then Fedex is more than twice as expensive, so maybe the expectations are warranted. Especially when they put up pages like
http://www.fedex.com/in/why-ship-with-fedex/money-back-guarantee.html
and then completely renege on the delivery date. Like what happened last night - item still not delivered, so delivery status was shifted from "by 8.00 pm" to "pending".
Edit: The item was finally delivered on 20th March, after being shipped on 22 Feb. Even if you discount all the customs clearance delays, it took 8 days. With "Fedex International Priority" shipping. Now compare this with another similar package, sent via Royal Mail and India Post, which took a total of 10 days to reach me from Aberdeen, Scotland.
Monday, March 18, 2019
different kinds of hash verifications, and writing boot disk iso to USB
sha256sum -c *CHECKSUM
md5sum -c MD5SUMS
If it is a DVD iso and not meant for USB boot, maybe unetbootin is required.
Friday, March 15, 2019
burning in subtitles with VLC
Burning in subtitles with VLC needs a bit of tweaking -
1. Media -> Stream, choose the video file. Don't enable the subtitle checkbox on that screen. Click the Stream button.
2. In the Stream Media Wizard, choose the destination as File. Click Add and choose a filename for the destination.
3. In the next Wizard screen, make sure activate transcoding is checked. Click on the settings button, in the subtitles tab, make sure the 'enable subtitles', and 'overlay subtitles on the video' are checked. Codec can remain T.140.
4. In the next screen, in the Generated Stream Output String, we need to edit out (delete) the part of the string which says scodec=t140,
5. Click stream to transcode.
Saturday, March 02, 2019
F&D smart TV - removing the ads from home screen
We wanted the F&D smart TVs in our lobby to start up with "last selected input" instead of the Home screen with all the youtube "recommendations" or ads. I tried out
Setting -> Common -> System Recovery
(To be updated.)
For Sony TVs, https://www.sony.com/electronics/support/articles/00257833 - Quick settings - Power on behaviour - Last input
There are many posts about using third-party home screen apps etc, but I'd rather use "Last input". Will check on this later.
Monday, February 25, 2019
downloading subtitles from youtube videos
Sunday, February 24, 2019
easy way to copy ssh keys to remote machines
ssh-copy-id -i ~/.ssh/id_rsa.pub user@host
This copies the public key to the authorized_keys file on the remote machine.
Saturday, February 23, 2019
stabilizing cycling videos
Bugs and workarounds -
1. My phone doesn't show all the videos all the time, either to Hyperlapse when importing video, or via MTP to Linux Mint 18.1 on USB for taking backups. Workaround, as suggested here, was to just restart the phone.
2. Initially, I was working with kdenlive 15 which came with Linux Mint 18.1, and faced the problem of tooltips being unreadable, having white text on yellow background as mentioned in this post. Then I started using the version 18.12 appimage - that does not have this issue, and also is less prone to random crashes.
3. My equipment is the LG Q6 mobile mounted on the handlebar using a cheap mount from Amazon,
Friday, February 22, 2019
options when running out of space in legacy GSuite free
Copy-pasting from an email I wrote to a colleague - Regarding email - currently, our domain uses GSuite legacy free plan and does not allow expansion of the existing amount of space. So, the only way is to delete large attachments. In many cases, the attachments are required and cannot be deleted. This can be handled in many ways.
Wednesday, February 20, 2019
videos for waiting area
cvlc -I http --http-port 43210 --http-password MyPassword --fullscreen --no-video-title --sub-source="marq{file=/pathto/marq.txt,position=
Documentation for the marq subfilter is at https://wiki.videolan.org/Documentation:Modules/marq
and the idea came from this discussion.
Auto starting using a .desktop file put in .config/autostart directory as described at
https://www.raspberrypi.org/forums/viewtopic.php?t=17051
with the contents of the .desktop file being
[Desktop Entry]
Type=Application
Exec=/path/to/my/shellscript.sh
Modifying the marq.txt is currently by ssh, need to make some better solution, perhaps using a web server and PHP or something like that. Some images below of our test setup -
Sunday, February 17, 2019
rotate mp4 video without re-encoding
my working commandline was
Saturday, February 16, 2019
making a flower timelapse
using OpenCamera app on an LG Q6 mobile phone.
Settings:
Repeat - Unlimited
Repeat Mode Interval - 10 seconds.
So, playback at 30 fps made it 300x real-time.
Imported into kdenlive as an image sequence and then exported with pan and zoom effect applied.
Bug and workaround - kdenlive 15.12.3 which comes with Linux Mint 18.1 has an issue with importing image sequences when the numbering is not sequential, or jumps. For example, the image sequence shot by OpenCamera had filenames like
Although kdenlive would see all 463 files in the folder, the images after 85953 would be ignored, and 85953 would be repeated for those frames. Workaround was to put the 8xxx sequence in one folder, 9xxx sequence in a separate folder, etc, and then import as image sequence.
kdenlive 18.12.1 64 bit appimage seems to have mitigated this bug by just importing those frames in the sequence it recognizes, without causing any of the repeat frames. But in the clip properties, it still erroneously shows the larger number of frames found etc. So, the workaround above is recommended.
https://www.youtube.com/watch?v=tD0L7H1jbWo
Thursday, February 14, 2019
TVS MSP345 printer with Epson drivers
Monday, February 11, 2019
sending and receiving emails with domain aliases on GSuite
- On your computer, open Gmail logged in as username@
longname.tld . - In the top right, click Settings
Settings.
- Click the Accounts and import or Accounts tab.
- In the "Send mail as" section, click Add another email address.
- There, enter username@sssvv.org
Tuesday, February 05, 2019
modus operandi for processing audio files for rebroadcast
1. Listen to the whole thing (if feasible at 2x speed, or at mandir itself, while the program is going on), mark problematic parts with markers.
2. If the program is a drama that contains copyrighted songs, edit out those songs within only 10-20 seconds.
3. If the program is of poor quality, like songs which are completely out of tune, do not process for broadcast.
4. If the program has speeches which are not of general interest, or which are not suitable for broadcast due to poor delivery, do not process for broadcast. If the speech is good, but marred by repetitive words like Ummmm / Aaaah / "You know" / "Like" etc, edit those out. Also edit out any gaps like speaker turning pages, speaker drinking water, etc.
5. If it is a music program, try to cut into individual songs/announcements if possible. Filenames similar to historical filenames which you can see under MSV* and SV* in our local cdsearch page.
6. For speeches, I have been processing to remove noise as per this:
http://hnsws.blogspot.com/2010/01/tips-for-clean-audio.html or
http://hnsws.blogspot.com/2013/11/another-audio-cleanup-tool-chain-reaper.html
7. I have been skipping processing Telugu dramas for AsiaStream once TeluguStream started, so that if the Telugu team is interested, they can use for TeluguStream. Similarly now with Hindi team.
Sunday, January 27, 2019
paying income tax on tax demand
Friday, January 11, 2019
malware/adware on our home page with BSNL router
Monday, December 24, 2018
low cost desktops for billing counter etc
https://eltechs.com/product/exagear-desktop/
for running Windows software on the Pi.
Cost of full fledged Pi system would be < Rs. 4000 including software and HDMI to VGA convertor which would enable use of old monitors.
Sunday, December 23, 2018
building Matlab-like gui programs on GNU Octave
https://stackoverflow.com/questions/47298509/how-to-manually-convert-matlab-guide-gui-code-to-octave-ui-components
https://stackoverflow.com/questions/43519040/how-to-code-a-slider-in-octave-to-have-interactive-plot/43536882#43536882
A nice example -
https://github.com/octave-de/macgyver_utils/blob/master/demo_uicontrol.m
On Matlab, gui creation guide,
https://in.mathworks.com/videos/creating-a-gui-with-guide-68979.html
Tuesday, December 18, 2018
issue with server-hosted mp3 played on Android app
For Audio files that are present in server2 we are able to download/stream, for all the android devices (including Android 4.4 version devices also) . But Audio files present in server1 is not downloading/streaming for few android devices (like Android 4.4 version devices etc).Links from both the servers are mentioned for your reference.http://server1/path/1.mp3 (not working in all the devices) Same links we have tested for https also.http://server2/path/1.mp3 (working in all the devices)Kindly suggest us how to go about this issue.
Saturday, December 15, 2018
incomplete instructions - SBI debit card
OpenCV CUDA performance comparisons
Wednesday, October 31, 2018
Google Apps error report and workaround
FYI, for future reference.
Was trying to create a new email Id in Google Apps.
Clicking on the 'Users' menu item in the Admin panel of Google Apps, repeatedly gave "Error 400, URL is not available error" described here. Tried the steps described there.
Finally, I could get there and create the same only through the Plain-HTML Gmail interface. Nothing else worked.
Friday, October 26, 2018
google group permissions for Google Apps domain
(The actual domain names have been changed :)
Whoever is the admin for your whateveritwas.extension domain in Google Apps, has to enable access.
I believe that whateveritwas.extension was set as a domain alias for anotherdomain.com in Google Apps? I see an email thread where I suggested that this was a possibility. In that case, webmaster@anotherdomain.com would be the admin.
After logging on to webmaster@anotherdomain.com , go to the administrative console at
https://admin.google.com/Dashboard
According to this page,
https://productforums.google.com/forum/#!msg/apps/6wYszBdjuaI/W1cJcvxAf50J
"From the administrative console select the Organizations& Users tab, then click on Services. Scroll down to Google Groups and turn it on."
Wednesday, October 24, 2018
install EOS utility without CD
https://www.youtube.com/watch?v=VTLISryqbSc
Creating a registry key under
HKEY_LOCAL_MACHINE -> Software -> WOW6432Node
(Right-click, New -> Key)
Canon
(Right-click, New -> Key)
EOS Utility
This did not work for the latest version of EOS Utility, but did work for an earlier version.
Thursday, October 04, 2018
flashing a custom ROM on a Samsung Galaxy Grand Quattro - i8552
https://www.gsmarena.com/samsung_galaxy_win_i8550-5392.php
This was for use at our exhibit of Universe2go.
The stock Samsung had Android 4.1, and Universe2go needed at least 4.2. So, I started on the journey to flash a custom ROM on the device. It took me 3-5 hours over 3-5 days because of conflicting instructions and things not going as planned. The things which delayed me turned out to be
- loose USB cable. A good fit for the USB cable, and a good cable, is a must before doing any flashing.
- lack of clear instructions on how exactly the buttons need to be pressed to go into download mode on this particular model, and terribly written instructions in general,
- and many broken links and links to paid file hosts. Downloaded files from androidfilehost.com instead, using the filenames given.
which is actually just a skin on the existing 4.1 kernel and wrongly reports as 4.4 - so universe2go does not run ...
and also lineageOS 13,
https://forum.xda-developers.com/grand-quattro/orig-development/rom-lineage-os-13-grand-quattro-t3541777
which crashes a lot. This one ran universe2go, but the screen refreshes were at 5 fps or so, not usable. Also tried this one,
https://forum.xda-developers.com/grand-quattro/orig-development/rom-carbon-rom-gt-i8552-delos3geur-t3628076
which says that the sensors work. But installing GApps causes crashes. GApps is supposed to be the version of the OS and ARM pico version - ie ARM 4.4 pico for this carbon, etc from opengapps.org . Also, it does not shut down cleanly. And universe2go crashes.)
Will try to restore the stock ROM -
https://forum.xda-developers.com/showthread.php?t=2433941
and then maybe unroot etc,
https://forum.xda-developers.com/showthread.php?t=2494471
Edit: Finally restored stock ROM from
The actual sequence of steps I followed, with many missteps, was something like this -
* daemon started successfully *
List of devices attached
71ba1f19 device
Bus 002 Device 003: ID 046
assert error
Wednesday, August 29, 2018
correcting browser fonts on Ubuntu and related distros
https://askubuntu.com/questions/1008661/incorrect-rendering-display-of-devanagari-fonts-in-browsers-chrome-firefox-etc
On Firefox, in Preferences, Language and Appearance, changed default font to Lohit Devanagari
Friday, August 03, 2018
ease of use of Word vs LaTEX
https://blog.mendeley.com/2012/03/24/how-to-series-generate-bibtex-files-for-your-collections-for-use-in-latex-part-3-of-12/
Can easily get bibtex entries using Google scholar too.
https://texblog.org/2014/04/22/using-google-scholar-to-download-bibtex-citations/
Some manual corrections are needed.
With Microsoft Word, equations, citations, and almost everything else needs tweaks. There is a tendency to get mangled as the document goes from one collaborator to another with different versions of Word. For example, here is the long procedure for copy-pasting an equation!
Thursday, July 19, 2018
loudness with reaper - dB and RMS and LUFS
In particular, the advice given by Michal is, "use actions from SWS.
SWS: Set RMS analysis/normalize options
Here you can set your RMS level target, it is one time operation..
SWS: Normalize items to overall peak RMS
You can select all items on the track and run this action for RMS normalization to predefined level.."
Of course, right now I'm not likely to try any of these...
Monday, July 09, 2018
troubleshooting streaming delay on Google Home device
I'm still seeing ~100 second delays even on this stream on the Home device. On my phone/browser, it plays instantly.
I tried changing the burst-size but initially did not find any difference -
64 kB = 65535 = 100 sec delay - this is the default burst-size for icecast
128 kB = 131072 = 100 sec delay
256 kB = 262144 = 100 sec delay
512 kB = 524288 = 100 sec delay
1 MB = 1048576 = 100 sec delay
Then it turned out that I was using a relay for testing, and on-demand was set to 1. After setting the relay's on-demand parameter to 0 (so that the relay is always ready and doesn't have to start after a new connection is made),
128000 = started within 4 seconds!
64000 = 100 sec delay
Repeated this three times, waiting 100 sec + each time after restarting the server. Seems to work well with 128000. So, set this as the burst-size for all our streams.
Sunday, July 08, 2018
Google Home Mini - a mini review
Tuesday, July 03, 2018
packet sniffing wifi
https://osqa-ask.wireshark.org/questions/61656/promiscuous-mode-not-working
https://wiki.wireshark.org/CaptureSetup/WLAN#Monitor_mode
Then the packets have to be decrypted.
https://wiki.wireshark.org/HowToDecrypt802.11
For that, if using WEP, the WEP password has to be converted to the Hexadecimal key -
http://corecoding.com/utilities/wep2hex.php
change Google Home mini wifi settings without Google Assistant app
Friday, June 29, 2018
ITR2 - paying income tax
Friday, June 22, 2018
blender z axis flip
Just a quick recipe for flipping an object in Blender -
- Select object
- Ctrl A (for Apply)
- Choose Scale
- Enter Z scale as -1
- Ensure that scale checkbox is ticked under apply.



