HOWTO Compile spelldiff Extension for SQLite3 on Windows 10 
I recently was able to compile an extension for SQLite3 on Windows 10. I wanted to use the editdist3 function for SQLite3 which is used to compare how similar strings are. To get he function you have to compile the extension from source code. I will provide the compiled extension here as a DLL as well as the process to compile from source.

Firstly, I found that I had a compiler available to me on the Windows cmd prompt. I think this is because I have Qt Creator installed, which is a free download and a great tool for writing GUI programs with C++ if you know about that. So I'll assume you have gcc available to you on the command prompt.

Next, you need to download the source files from the SQLite website: https://www.sqlite.org/download.html
Get the sqlite-amalgamation ZIP and the sqlite-src ZIP, you will need both.

Extract the sqlite-src ZIP to a temporary folder. Open the sqlite-amalgamation ZIP and copy the sqlite3.h, sqlite3.c and sqlite3ext.h files to clipboard. Open to where you extracted the sqlite-src ZIP with Windows Explorer then go into the ext/misc folder. Paste the 3 files into that folder.

Next, open a cmd prompt and change to the sqlite-src/ext/misc folder. Enter the following command to compile the extension:
gcc -I -g -shared spellfix.c -o spellfix.dll

After a little work time, the cmd prompt will return and you should find a file called spellfix.dll in the sqlite-src/ext/misc folder.

To use the extension, it depends on how you're using SQLite. If you're using a front end program, check the menus for a Load Extension type option, and select the spellfix.dll file. You can then use the editdist3 function in SQLite.

References



SQLite - Spellfix Implementation
SQLite Download
Qt Creator

[ view entry ] ( 1536 views )   |  [ 0 trackbacks ]   |  permalink  |   ( 3 / 417 )
Easy Way to Track Domains in PiHole 
After you install Pi-Hole to suck ads from your network, you probably will load some domain lists (gravity lists or something they call them) to black or white list domains. If you start using your devices on the network, you'll probably find somethings don't work because domains are being blocked, and some thing wont block ads.

To monitor pihole's activity you use:

pihole -t

on the linux console command line. This will show in real-time the activity that the pihole software is undertaking. it's very hard to keep track of whats going on with this, as you have to verify the IP of the client and then try to see which domains etc. there's just generally a lot of info going on and the screen scrolls up rather quickly even with only 2 devices connected to pihole.

Instead, you should filte rthe pihole activity down to a single client, the client device you are using to troubleshoot. To do this, just use a pipe and grep the output based on the IP of the device you want to see:

pihole -t | grep .188

For example, this will show me the activity of the device on my network that is 192.168.0.188

It also filters out the lines in the output that say whether a domain was blocked or not, it will just show us that client .188 accessed whatever domain. We can then load the pihole web interface and check the Query Log to see if the domain is blocked or not, then black/whitelist it to see if it makes the desired change we want.

[ view entry ] ( 633 views )   |  [ 0 trackbacks ]   |  permalink  |   ( 2.9 / 510 )
DC Crossover Series 2019 - Crisis on Infinite Earths 
For anyone looking for a list of the episodes to get to watch the 2019/2020 DC TV Show Universe crossover called Crisis on Infinite Earths, here is the list of episodes to watch from each show:

Part 1: Supergirl.S05E09
Part 2: Batwoman.S01E09
Part 3: The.Flash.S07E09
Part 4: Arrow.S08E08
Part 5: DCs.Legends.of.Tomorrow.S05E01

I looked for a list of the episode numbers to watch and could only find lists telling you the show and air-date of each episode. Looked like no one wanted to bother going to thetvdb.com to compile a list of the actual season/episode numbers so here they are.

[ view entry ] ( 550 views )   |  [ 0 trackbacks ]   |  permalink  |   ( 3 / 488 )
rsync --delete not working? 
If you issue an rsync command with the --delete option in it and you find it isn't removing non-existent source files from the target, when you google you will find a whole host of answers that say "don't use a wildcard character * on the end of the target path!"

that's all well and good until you aren't using wildcards and --delete still isn't working!

what you do need on the end of the target path is a trailing slash / character for --delete to work!

so:

rsync -avzh --progress --delete -e 'ssh -p 31337 -i /home/user/keyfile.private' user@host.net:/home/user/backups /home/localuser/backups

will NOT do the --delete for you!

rsync -avzh --progress --delete -e 'ssh -p 31337 -i /home/user/keyfile.private' user@host.net:/home/user/backups/ /home/localuser/backups

WILL do the --delete for you!

[ view entry ] ( 343 views )   |  [ 0 trackbacks ]   |  permalink  |   ( 3 / 458 )

<Back | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Next> Last>>