<?xml version="1.0" encoding="ISO-8859-1"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ref="http://purl.org/rss/1.0/modules/reference/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://purl.org/rss/1.0/">
	<channel rdf:about="http://www.beardeddonkey.com:443/home/rss.rdf">
		<title>hOme.beardedDonkey</title>
		<link>http://www.beardeddonkey.com:443/home/index.php</link>
		<description><![CDATA[Page design and contents copyright to respective authors; No responsibility.<script type=\"text/javascript\">
var gaJsHost = ((\"https:\" == document.location.protocol) ? \"https://ssl.\" : \"http://www.\");
document.write(unescape(\"%3Cscript src=\'\" + gaJsHost + \"google-analytics.com/ga.js\' type=\'text/javascript\'%3E%3C/script%3E\"));
</script>
<script type=\"text/javascript\">
try {
var pageTracker = _gat._getTracker(\"UA-9697345-2\");
pageTracker._trackPageview();
} catch(err) {}</script>
<!-- Start of StatCounter Code for Default Guide -->
<script type=\"text/javascript\">
var sc_project=8021752; 
var sc_invisible=1; 
var sc_security=\"88cba38a\"; 
</script>
<script type=\"text/javascript\"
src=\"http://www.statcounter.com/counter/counter.js\"></script>
<noscript><div class=\"statcounter\"><a title=\"tumblr stats\"
href=\"http://statcounter.com/tumblr/\" target=\"_blank\"><img
class=\"statcounter\"
src=\"http://c.statcounter.com/8021752/0/88cba38a/1/\"
alt=\"tumblr stats\"></a></div></noscript>
<!-- End of StatCounter Code for Default Guide -->]]></description>
		<items>
			<rdf:Seq>
				<rdf:li resource="http://www.beardeddonkey.com:443/home/index.php?entry=entry240602-122518" />
				<rdf:li resource="http://www.beardeddonkey.com:443/home/index.php?entry=entry201110-234435" />
				<rdf:li resource="http://www.beardeddonkey.com:443/home/index.php?entry=entry200508-233825" />
				<rdf:li resource="http://www.beardeddonkey.com:443/home/index.php?entry=entry200206-021229" />
				<rdf:li resource="http://www.beardeddonkey.com:443/home/index.php?entry=entry200106-213533" />
				<rdf:li resource="http://www.beardeddonkey.com:443/home/index.php?entry=entry200104-003544" />
				<rdf:li resource="http://www.beardeddonkey.com:443/home/index.php?entry=entry191214-021843" />
				<rdf:li resource="http://www.beardeddonkey.com:443/home/index.php?entry=entry190714-231038" />
			</rdf:Seq>
		</items>
	</channel>
	<item rdf:about="http://www.beardeddonkey.com:443/home/index.php?entry=entry240602-122518">
		<title>Setting up C++ Development Environment in Windows using VSCode for the IDE</title>
		<link>http://www.beardeddonkey.com:443/home/index.php?entry=entry240602-122518</link>
		<description><![CDATA[If you want to develop cross-platform programs using C++ and your OS is Windows, and you want to use VSCode as your IDE, you should follow the instructions found at this page: <a href="https://stackoverflow.com/questions/30069830/how-can-i-install-mingw-w64-and-msys2" target="_blank" >https://stackoverflow.com/questions/30069830/how-can-i-install-mingw-w64-and-msys2</a><br /><br />follow the answer written by HolyBlackCat<br /><br />I learned that you can set up VSCode to develop using the C++ STL (Standard Library) no worries, just download and install mingw from winlibs or somewhere else and the ninstall C/C++ Extension Pack in VSCode and it will pretty much work and compile your project with little fuss.<br /><br />However the moment you want to start including 3rd party C++ libraries (I wanted to try using poppler in my project) the whole situation becomes painful and impossible.<br /><br />To use poppler, you will also need a number of other 3rd party libraries and to go downloading all of those and building them is a painful task, especially when all you wanna do is: #include &quot;poppler-document.h&quot; and keep coding your own project.<br /><br />So instead you are better off installing MSYS2 first, and then install mingw THROUGH MSYS2 using pacman and you will be able to use pacman to install the 3rd party C++ libraries as you need them and have them available in your C++ development environment which VCode will hook into.<br /><br />At least, hopefully that&#039;s how it will work..... I&#039;ll get back to you Barry.<br /><br />---<br />And we&#039;re back. You should also consider following the instructions on this page: <a href="https://code.visualstudio.com/docs/cpp/config-mingw" target="_blank" >https://code.visualstudio.com/docs/cpp/config-mingw</a> and check in a Windows cmd windows that gcc, g++ AND gdb are available on the command line (add the msys2 ucrt64 bin folder to your computer&#039;s PATH environment variable) <br /><br />If gdb is not found, you need to do this command in msys2 ucrt64 terminal: <br /><br />pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain<br />]]></description>
	</item>
	<item rdf:about="http://www.beardeddonkey.com:443/home/index.php?entry=entry201110-234435">
		<title>HOWTO: Install Google Play Store / Services onto Xiaomi Redmi 10X Pro 5G Chinese ROM</title>
		<link>http://www.beardeddonkey.com:443/home/index.php?entry=entry201110-234435</link>
		<description><![CDATA[I bought a Redmi 10X Pro 5G phone and didn&#039;t realize it only comes with Chinese ROM (Nov 2020) which does not ship default with anything to do with Google. This means, no Google Play Store. No Google account, no GMail, no Google Maps etc.<br /><br />To remedy this situation, you can do the following: <br /><br />1. Download &quot;GoogleInstaller_3.0.apk&quot; to your PC - this app is shown being installed from the (Xiaomi) Mi App Store in YouTube videos. On the 5G model of the Redmi 10X Pro, you wont be able to do what they do in the videos. Maybe its because the MIUI version on this phone is v12 ? or maybe by Nov 2020 they have updated the Mi App Store app and it is different now? I don&#039;t know, but it doesn&#039;t work like in the videos. So get the Google Installer APK instead, it is 176Kb according to Windows Explorer. I got it originally from: <a href="https://xiaomifirmware.com/downloads/download-google-installer-3-0-xiaomi/" target="_blank" >this page</a>.<br /><br />2. On the RM10XP5G phone, open the internet browser and go to <a href="https://sendfilestotv.app/" target="_blank" >sendfilestotv.app</a> and click on the &quot;Get It On Aptoide&quot; button. This takes you to Aptoide website, it will be in French, but there will be an orange button icon you can click to download the SendFilesToTV app APK. Get the APK onto the phone and install it.<br /><br />3. Run SendFilesToTV on the phone, tap &quot;Receive&quot;<br /><br />4. Install the SendFilesToTV software onto your PC. Run it. In the system tray, opposite click the tray icon for the program, and select &quot;Send files...&quot;. Choose the Google Installer APK file and then select which device to send it to (The phone should appear automagically in a list as long as its on the same network as the PC)<br /><br />5. Now on the phone, use the Files app to open the Google Installer APK file and install it. It should auto-run (going from my sketchy memory). It will be in Chinese, but basically if you see a big blue circle with Chinese writing, you can press that to continue the process of the app. It will install the Google Services Framework and Play Store etc. etc. all the good stuff.<br /><br />Now that you have Google Services on the phone, you can install your favourite launcher and softwares etc.<br /><br />I have not trialed this phone completely at time of writing (Nov 2020) as I just got it. I have read some ppl saying there&#039;s issues with Maps and GPS, amongst other things, usually to do with the fact it&#039;s meant to be a Chinese phone. The hardware is pretty good for the price and I got it mostly to compare the camera quality against a Redmi Note 9 Pro because my wife wanted a phone with better camera ability - so I&#039;ll see how it goes.]]></description>
	</item>
	<item rdf:about="http://www.beardeddonkey.com:443/home/index.php?entry=entry200508-233825">
		<title>HOWTO Compile spelldiff Extension for SQLite3 on Windows 10</title>
		<link>http://www.beardeddonkey.com:443/home/index.php?entry=entry200508-233825</link>
		<description><![CDATA[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.<br /><br />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&#039;ll assume you have gcc available to you on the command prompt.<br /><br />Next, you need to download the source files from the SQLite website: <a href="https://www.sqlite.org/download.html" target="_blank" >https://www.sqlite.org/download.html</a><br />Get the sqlite-amalgamation ZIP and the sqlite-src ZIP, you will need both.<br /><br />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.<br /><br />Next, open a cmd prompt and change to the sqlite-src/ext/misc folder. Enter the following command to compile the extension: <br />gcc -I -g -shared spellfix.c -o spellfix.dll<br /><br />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. <br /><br />To use the extension, it depends on how you&#039;re using SQLite. If you&#039;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.<br /><br /><h3>References</h3><br /><br /><a href="http://sqlite.1065341.n5.nabble.com/Spellfix-Implementation-td75596.html" target="_blank" >SQLite - Spellfix Implementation</a><br /><a href="https://www.sqlite.org/download.html" target="_blank" >SQLite Download</a><br /><a href="https://www.qt.io/product/development-tools" target="_blank" >Qt Creator</a>]]></description>
	</item>
	<item rdf:about="http://www.beardeddonkey.com:443/home/index.php?entry=entry200206-021229">
		<title>Easy Way to Track Domains in PiHole</title>
		<link>http://www.beardeddonkey.com:443/home/index.php?entry=entry200206-021229</link>
		<description><![CDATA[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&#039;ll probably find somethings don&#039;t work because domains are being blocked, and some thing wont block ads.<br /><br />To monitor pihole&#039;s activity you use:<br /><br /><pre>pihole -t</pre><br />on the linux console command line. This will show in real-time the activity that the pihole software is undertaking. it&#039;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&#039;s just generally a lot of info going on and the screen scrolls up rather quickly even with only 2 devices connected to pihole.<br /><br />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: <br /><br /><pre>pihole -t | grep .188</pre><br />For example, this will show me the activity of the device on my network that is 192.168.0.188<br /><br />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.]]></description>
	</item>
	<item rdf:about="http://www.beardeddonkey.com:443/home/index.php?entry=entry200106-213533">
		<title>DC Crossover Series 2019 - Crisis on Infinite Earths</title>
		<link>http://www.beardeddonkey.com:443/home/index.php?entry=entry200106-213533</link>
		<description><![CDATA[For anyone looking for a list of the <b>episodes</b> to get to watch the 2019/2020 DC TV Show Universe crossover called <i>Crisis on Infinite Earths</i>, here is the list of episodes to watch from each show: <br /><br />Part 1: Supergirl.S05E09<br />Part 2: Batwoman.S01E09<br />Part 3: The.Flash.S07E09<br />Part 4: Arrow.S08E08<br />Part 5: DCs.Legends.of.Tomorrow.S05E01<br /><br />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.]]></description>
	</item>
	<item rdf:about="http://www.beardeddonkey.com:443/home/index.php?entry=entry200104-003544">
		<title>rsync --delete not working?</title>
		<link>http://www.beardeddonkey.com:443/home/index.php?entry=entry200104-003544</link>
		<description><![CDATA[If you issue an rsync command with the --delete option in it and you find it isn&#039;t removing non-existent source files from the target, when you google you will find a whole host of answers that say &quot;don&#039;t use a wildcard character * on the end of the target path!&quot;<br /><br />that&#039;s all well and good until you aren&#039;t using wildcards and --delete still isn&#039;t working!<br /><br />what you <b>do</b> need on the end of the target path is a trailing slash / character for --delete to work!<br /><br />so: <br /><br />rsync -avzh --progress --delete -e &#039;ssh -p 31337 -i /home/user/keyfile.private&#039; <a href="mailto:user@host.net" target="_blank" >user@host.net</a>:/home/user/backups /home/localuser/backups<br /><br />will NOT do the --delete for you!<br /><br />rsync -avzh --progress --delete -e &#039;ssh -p 31337 -i /home/user/keyfile.private&#039; <a href="mailto:user@host.net" target="_blank" >user@host.net</a>:/home/user/backups<b>/</b> /home/localuser/backups<br /><br />WILL do the --delete for you!]]></description>
	</item>
	<item rdf:about="http://www.beardeddonkey.com:443/home/index.php?entry=entry191214-021843">
		<title>Mazda CX9 / Vehicle Spare Parts</title>
		<link>http://www.beardeddonkey.com:443/home/index.php?entry=entry191214-021843</link>
		<description><![CDATA[This is an entry to explain how to look up spare parts for cars online.<br /><br /><h2>SupercheapAuto My Garage</h2><br />The best way to find spare parts for your Mazda CX9 or any vehicle is to go to supercheapauto.com.au and use their &quot;My Garage&quot; feature. Enter your vehicle registration number, or choose which model vehicle you want to find parts for, click the little yellow arrow head that points down on the My Garage section on the main website page and then click &quot;Shop All Parts For My Vehicle&quot;.<br /><br />The page that loads will look a bit like a website from 1998, and it shows you all the spare part categories on the left which you can use to filter the products shown on the right. This catalog system is pretty good and it shows you photos of the parts in some cases which is really helpful. Once you find a part you want, you should then get some sort of part number, code or brand name you can google further to get more info. <br /><br /><h2>Google for more Info</h2><br />For example, I was after an air conditioning/heater blower motor for my Mazda CX9. I looked up the part in SCA&#039;s My Garage, then noticed it was made by a company called JAS Oceania. <br /><br />Googling JAS Oceania brought up a location only about 1km away from the SupercheapAuto store&#039;s location in my area. In other words, the supplier of the part is in the same suburb as SupercheapAuto&#039;s store. I might be able to buy directly from the spare part manufacturer? The advantage to doing this is a lower lead time. I might be able to get the part immediately instead of waiting for SCA store to have it sent over to them, which can take at least a half day and usually takes a day on average in my experience.<br /><br />Most spare parts, but not all, will have a part number on them and perhaps a brand name. This is a really good way to find the part online. Google for the brand and part number and you will find you can probably buy the part from a number of online stores, but buyer beware - I found the blower part I wanted on AliExpress but it wasn&#039;t the full part with the cylindrical fan blades attached. It was only the motor segment of the part and the pricing was about the same as buying the whole part locally. I prefer and recommend buying locally over online, especially for automotive spares because if the part is incorrect you can return it and exchange it or get a refund. Doing this is a big hassle with online purchases.]]></description>
	</item>
	<item rdf:about="http://www.beardeddonkey.com:443/home/index.php?entry=entry190714-231038">
		<title>SQLite How to select a particular day of the week using date function</title>
		<link>http://www.beardeddonkey.com:443/home/index.php?entry=entry190714-231038</link>
		<description><![CDATA[This will select last Thursday&#039;s date:<br /><br /><pre>SELECT date(&#039;now&#039;, &#039;weekday 4&#039;, &#039;-7 days&#039;)</pre><br /><br />weekday 4 = Thursday, but if we want last week we have to -7 days from it.<br /><br />If you want the date to be returned as unix epoch value, do the following: <br /><br /><pre>SELECT strftime(&#039;%s&#039;, date(&#039;now&#039;, &#039;weekday 4&#039;, &#039;-7 days&#039;))</pre>]]></description>
	</item>
</rdf:RDF>
