Items filtered by date: December 2014

By now you have created your Online Social Identity(s) which will now need as we go throught the various Social Media sites on the internet.

This article will help you configure these services to use them as a normal person but will not go into advanced integration, that is for another day.

Social Websites and Services

There might be more than these websites and services but these are just the ones I have come across or might feeel the need to use.

Online Services

  • Google
  • Microsoft
    • Email @ outlook.com
    • Windows login (optional – but I think it links your stuff, not quite social)
    • Skype
    • Xbox
    • Webmaster Tools
    • Windows Phone
    • LinkedIn (Does not need a Microsoft Account)
  • Yahoo
    • Email @ yahoo.com
    • Flicker
  • Facebook
    • Instagram (Does not need a Facebook Account)
    • Facebook Business Page
  • Twitter
  • Wordpress.com
    • Akismet (AntiSpam)
    • Gravatar
    • Ping-o-matic (no account needed)
  • AppleID
    • iTunes
    • iOS developers
  • Pinterest
  • Disqus
  • OpenID
  • Tumblr
  • Reddit
  • Blogger
  • Stumble Upon
  • LiveJournal – add the other writers list from easyblog - https://stackideas.com/docs/easyblog/administrators/remote-publishing
  • MySpace
  • GitHub
  • Forums and blogs – most of these when you login allow you to change your email

Security Services / Antispam

I have added these here because they either require you to use an online identity to be allowed to use them or they are involved in controlling social activities.

  • Project Honey Pot - The Web's Largest Community Tracking Online Fraud & Abuse |
  • Stop Forum Spam - A free service to block spam on your forum
  • reCAPTCHA v2
  • 2 factor authentication ( i.e. google 2 factor)
  • Google Safe Browsing API Key - Sever Key
  • Cleantalk - Cloud spam protection for forums, boards, blogs and sites
  • Akismet

Other Online Services

YouTube Share Links

These links are from a standard YouTube page and shows you the sites that YouTube regard as important in the social media and thus the rest of the web.

  • Facebook
  • Twitter
  • Google+
  • reddit
  • Blogger
  • Tumblr
  • Pinterest
  • BKOHTAKTE
  • LinkedIn
  • Stumble Upon
  • LiveJournal

Social Sharing Accounts

In this section I will add my notes that I used when configuring the various accounts. If there are not notes it does not mean I did not set that service up.

Google

Google+

Google+ is very similar to Facebook (and also looks it).

  • To use Google+ you must have a Google account
  • In your google account you create your Google+ profile
  • Your Google+ profile must be a real person (i.e. you)
  • You cannot use a Google+ profile for a business, organisation or other sort of entity
  • You can create pages in Google+ which can be used for business, brands or other entities etc...
  • You can transfer the ownership of a Google+ page to another user (2 week transfer period)
  • You can have multiple editors on a Google+ page
  • All the Google+ pages must have a personal profile attached to edit them
  • You can set a vanity URL for a Google+ profile
  • You can set a vanity URL for pages
  • Vanity links can be changed after being set
  • Your Google+ profile can be linked to your YouTube account (and will be?)
  • How to change primary email address of a Google+ Profile? – plus many other Q&As
  • View & edit your Google+ profile – official google page
  • you can change your name in Google+ only 3 times in 2 years
Google+ Vanity URL

YouTube

Microsoft

Outlook/Live

Xbox

Skype

  • You need a microsoft account now to use Skype and cannot create an account seperately.
  • These were applicable before you required a Microsoft Account for Skype:
    • Always create a skype account first and then link to your outlook account (if you want).
    • I recommend setting up your skype account first to guarantee you get a decent name otherwise you get one assigned automatically (see here)
    • Skype – you can link and unlink to a Microsoft profile. (Limited number of times).
    • You do not need to link your skype account to a live account
    • Always create a skype account seperate and then link. This gives you a proper login for the skype service, otherwise you will get an automatically assigned skype id and can only access this via your Microsoft live account
    • You can have multiple Skype accounts attached to 1 email address.
    • If you want to see all your Skype accounts assigned to your email address, you need to perform a password reset. Once you click on a link it will take you to a list of your usernames and ask you which one you wish to reset the password on.
    • Contact skype customer support to see what other names are attached to your email address and have them remove them.
  • Can link skype to Facebook
  • How can I contact Skype Customer Service? – this official page is the quickest way of contacting Skype customer services
  • Can I delete my Skype account? – Official Skype Page
  • How to Contact Skype Customer Service – Discussion - Check this (I need to login)
  • There are several different levels of account deletion:
    • Don’t use the account and after 72hours it will be removed from the public directory, but not people who have added you already in to their contacts.
    • Edit the account and remove all personal information. Skype recommends this method. The rule above then applies.
    • Completely delete the account via Skype customer services. You have to contact Skype by customer services to have the account completely delete but because of some laws they have to do this. This link says you should send an email to delete@skype.com (contacting customer services should be the same if this email does not work)
    • You can simply contact customer support to request to unlink your email address from those unknown accounts – Not confirm this method and whether it is the same and a full account delete. Forum thread here.

Yahoo

Yahoo Mail

Flicker

  • A yahoo account is now needed for flicker (see link)
  • When you log in to Flickr with a google or a Facebook account a yahoo account is created behind the scenes
  • Yahoo account for login to Flickr is becoming mandatory
  • How do I transfer my Flickr photos from my old yahoo user ID to a new yahoo ID? – Yes, but read this before you do anything.
  • You can set a vanity URL on your Flickr account
  • A vanity URL can only be set once and then not changed again

Facebook

To setup Facebook account I first need to explain a few things.

Creating a Facebook Page

These are instructions related to creating a Facebook page.

Facebook Vanity URLs

Here are a few things to keep in mind when you create a custom vanity URL/username:

  • You can't claim a username someone else is already using.
  • Choose a username you'll be happy with for the long term. Usernames are not transferable, and you can only change your username once.
  • Usernames can only contain alphanumeric characters (A-Z, 0-9) or a period (".").
  • Periods (".") and capitalization don't count as a part of a username. For example, johnsmith55, John.Smith55 and john.smith.55 are all considered the same username.
  • Usernames must be at least 5 characters long and can't contain generic terms.
  • You must be an admin to choose a username for a Page.
  • Your username must adhere to Facebook’s Statement of Rights and Responsibilities.
  • Facebook vanity URLs are case insensitive
  • All variations of your URL will redirect to your chosen URL (I.e. ‘quantumwarp’ is the same as ‘QuantumWarp’). Facebook performs a 301 redirect.

What Now

So after reading the points above which should answer a lot of questions you have, I would recommend that you

  • Create a Facebook profile (if not already created one)
  • Carefully decide what you want your page to be called.
  • Create a page for your Website / Blog / Software (If appropriate)
  • Get 25 likes and set your chosen vanity URL.

Twitter

Vanity URLs

What Now

  • So set up a twitter account with a relevant name.
  • If your username is not available try Twitter support for recovering it

Set These Accounts Up

You should create an account with the following services and where necessary create a vanity URL. These services are the most essential ones to have even if you do not use them yet and don't forget you should setup these for each of your online identities.

The big three all have username dependent services and these can be created at anytime because you have already reserved your by signing up to the big three at the beginning of this series.

  • Google
    • Google+
    • Google+ Business Page (where appropriate)
    • YouTube
  • Microsoft
    • Skype
  • Yahoo
    • Flicker
  • Facebook
    • Instagram (Does not need a Facebook Account)
    • Facebook Business Page (where appropriate)
  • Twitter
  • Wordpress.com
    • Gravatar
  • Disqus

 

Published in Blogging
Thursday, 15 February 2018 18:07

Online Social Identity - Part 2 (Vanity URLs)

Before going any further we need to discuss vanity urls, what are they, who uses them and should i have one. Not all services need or use vanity URLs and some services will give you a premade link that you cannot change which will be linked to your username/Email address. For those that dont you can either keep everything the same as we discussed in the previous part to this series or you can furhter use these rules to decide your Vanity URLs.

A vanity URL is a unique human readable web address that is usually easy to remember and share. These can be for companies or individuals.

  • Vanity URLs are better for SEO and makes you easier to find
  • Once you decide on a suitable URL you should use it throughout your social media to keep a brand going
  • Not all services allow you to change your Vanity URL once set.

NB: Don’t rush in setting up your Vanity URLS, it won’t make that much difference at the beginning if you want to do this later. It is easier and better to do this step at the beginning though.

Example Vanity URLs

These are examples URLs from JoomlaShine framework that show you what all main social networks have for their vanity URLS

Facebook Vanity URL Examples

Twitter Vanity URL Examples

To Capitalise or Not (vanity/SEF URL)

This question might not be as simple as you think.

I asked this question to a local internet company:

I am in the process of setting up my online presence, and after working out how it all works and my last stumbling block is ‘Vanity URLs’.  I need to know whether it is better to use capitalisation for better readability or all lowercase which might reduce 301 redirects. Is there a standard to be followed. I will also use my chosen standard across all my social platforms.

Eg a test blog , greenfields.com , but should all my URLs be like

and got this response:

In general, we’d always advise lowercase, as that is the “standard” (as much as there is one) for the web. In practice it doesn’t matter too much what you name your pages as long as they link together correctly. I would also avoid redirects from upper to lowercase, as really if someone hits something they shouldn’t, a good 404 (page not found) should be able to point them in the correct direction.

With Capitals (CamelCase)

Pros Cons
  • Easier to read
  • Can be used to help branding (i.e. see TWiT)
  • Not all systems might support capitals
  • Someone is most likely to type the address in with no capitals
  • When you go to a similar address (i.e. QuantumWarp/quantumwarp) the site will most likely 301 re-direct
  • Google might see 2 pages when people only post the all lower case link
  • Many variations of the same word.

All lowercase

Pros Cons
  • Fairly standard
  • All systems support lowercase URLs
  • Not likely to get similar links (i.e. QuantumWarp/quantumwarp) pointing to your page, so is better for SEO
  • Only 1 version so duplication should arrive
  • Someone is most likely to type the address in with no capitals
 
  • Slightly harder to read
  • Plain (boring!)
  • Not as easy to say out loud

What I have decided and why

All lowercase - e.g. quantumwarp

  • Look at JoomlaShine, they have 2 words in their name but use all lowercase
  • There is a 50/50 split on lowercase/capitalised social URLs in big companies
  • SEO companies seem to use lowercase (check this statement)
  • Easy to make sure all my social sites will be the same (not all might support capitals (further research here required)
  • Blog sites seem to use lowercase (arstechnica) this might be because it matches their domain name and is better for SEO
  • Companies with a brand that are not running a blog site but has another purpose i.e. TWiT seem to use capitals. So that being said, those who are running a blog and have their social links the same as their blog name, should use all lowercase.
  • Not all services perform a 301 redirect to your chosen URL. i.e. twitter does a re-write so you can have multiple URLs with the same content
  • The response from my local internet company who do this more than I do.

Vanity URL Links

 

Published in Blogging
Wednesday, 14 February 2018 16:57

Online Social Identity - Part 1 (Getting Started)

When going online you need to have accounts to use services, have a blog, contribute on forums and other things, I call this having an Online Social Identity. We might have one or more of these depending on our lifestyle or employment. The Online Social Identities will always start with the big three on the internet Google, Microsoft and Yahoo because they run many of the services you will use and so you will need an account with them.

The aim of this series of articles is to streamline your online social presence by unifying all of your accounts allowing you to get on with being online instead of trying to figure out what to do, what accounts you need and why.

Social Email Providers

When setting up your email addresses you will need to get one from each of the following email providers.  These are special case because the companies that supply them use these as accounts for their services on the internet and between them they control a lot of the services you will use on the internet.

If you already have accounts that you use from these providers you can still use them, it is not against the rules.

  • Google / @gmail.com
  • Microsoft / @outlook.com
  • Yahoo / @yahoo.com

NB: Apart from Microsoft you cannot change the associated email address for these accounts once they have been created.

The account email determines certain aspects of services you sign up for i.e. Your Microsoft email address will become your Skype username and your Yahoo! Email address becomes your Flickr name.  However some services such as Microsoft Xbox will allow you to set a different GamerTag if you want. It is for this reason you should configure these accounts first because they will become a permanent part of your Social Online Presence.

When you create theses emails you should make sure they all have the same Local-part (in this example ‘test123’):

This makes things a lot easier to manage going forward and gives you scope to swap between which account you use for your primary email a lot easier.

Different Online Social Identities

People have different roles in life and usually want these to be kept separate and this is no different online. Each aspect of your online presence will need its own identity and therefore will need a set of email accounts as outlined above. The possible groups are:

  • Personal
  • Website/Blog/Software
  • Business/Company/Infrastructure

I will now go into more depth about the different identities and how you should use them. You might not need all of these identities.

Personal

This identity is for an individual personal which is separate to all other things and just represents one person.

  • This represents you.
  • If you have personal blog or family images you would use this profile because they all belong to you.
  • Consider your Xbox account; imagine you leave a company you want to take all of your personal stuff with you including your Xbox account. If this is tied to your work’s or business account you would not be able to take it with you but because it is your personal account which is not tied to work in anyway this is not problem.
  • If you have multiple blogs you post on you will not have multiple logins for each of them.

Email Use Examples

  • Google
    • Personal mobile phone (Android)
    • Google+ profile
    • Google Play Store
  • Microsoft
    • Xbox Live
    • Personal mobile phone (Windows Phone)
    • Windows 10 login
  • Yahoo
    • Personal Flickr account

Website / Blog / Software

This identity is only needed if you have a Website, Blog or Software that is large enough to warrant its own emails and other stuff.

  • This will be your online public facing presence.
  • This is how people will see you and your brand.
  • Acquiring the email address similar to your blog name prevents anyone from pretending to be you or someone from your Website/Blog/Software.

Email Use Examples

  • Google
    • Google+ page
  • Outlook
    • Skype
  • Yahoo
    • Flickr account

Business / Company / Infrastructure

I will use these accounts for anything to do with my business and mass management of my websites, in particular Webmaster Tools, Analytics and Advertising.

Depending on your circumstances you definitely want separate business accounts. Imagine if your business collapsed or you sold it and you have all your personal stuff in this identity you would most likely have to start again because data migration is not the best or just not possible or even if you just needed a member of staff to perform certain tasks he might be able to read your personal emails and see other personal information.

  • All companies need their own identity that just belongs to that company
  • This account can be used for many websites because your company can own more than one website.
  • This account should not be tied to a specific website unless that website is you company name i.e. therockgroup.com – but you may own the matching website if it makes sense.
  • This account should be used to configure Analytics, reCAPTCHA, Webmaster Tools and all other infrastructure services for websites.
  • Even if you are a one man band you should still separate your work stuff from your personal because one day you might stop working or sell your business etc... This allows things to be kept really neat. If you have multiple websites you can add all of the infrastructure stuff in here or even delegate to someone else without giving the keys to your personal online presence.

Email Use Examples

  • Google
    • Business mobile phone (Android)
    • AdWords (google only allows you 1 account for AdWords; it is against T&Cs to have more than 1. You also need to get approval, set up credit cards and bank details).
    • Google Analytics for all of my websites
    • Google Webmaster Tools for all of my websites
    • Google+ page
  • Outlook
    • Skype
    • Bing Webmaster for all of my websites
    • Business mobile phone (Windows Phone)
    • Bing advertising account
  • Yahoo
    • Flicker account in the future - i.e. Pictures of the various buildings we own
    • Yahoo advertising account (if they split from Microsoft)

Creating your 'Email Addresses'/Accounts

  1. First of all select the identities you require. (Personal/Website/Infrastructure)
  2. Come up with some suitable usernames/email addresses? eg buzzaldrin@ shoppingnut@ test123@. these username should be no longer than 15 characters because this is the longest username Twitter will allow and is probably an industry standard.

For each identity you require you need to create a group of email addresses from Google, Microsoft and Yahoo all with the same Local-part (in this example ‘test123’):

NB: check the username is available on all 3 suppliers before you commit.

When creating the email address follow these simple guidelines:

  • Common
    • Configure recovery information (Mobile Phone and Email)
    • Enable Two Factor Authentication (optional)
    • Configure your profile including adding a logo or image
    • Configure your privacy options
    • Forward your emails as required (see next section)
    • Always pick the .com version for your email. Do not pick a regional version such as .co.uk
    • Never use your real name in your email for security reasons (optional)
  • Personal
    • Pick a sensible name that you would not be ashamed to give an employer in the future and is not overcomplicated.
  • Website / Blog / Software
    • The Local-part of the emails should have you Website/Blog/Software name in it otherwise this identity would be a little pointless, especially for brand awareness.
  • Business / Company / Infrastructure
    • Because this identity will hold more than 1 website or company asset you should make sure that you do not use a specific name so you can encompass multiple assets.
    • E.g. therockgroup@outlook.com does not specify any particular asset or website that you might own, almost like a holding company but for online assets.
    • I would also purchase the domain therockgroup.com (optional)

Managing those new email accounts

For each identity we now have 3 email addresses and to login into them regularly would add an extra burden on to someone who probably has better things to do so we will now explore the various options to reduce the man-hours required.

  • Use each account separately
  • Forward all emails to one address
  • Connected accounts
  • Forward to a non-social email account

With any of the options above you will still need to pick a primary email address which is the one you will give out and is easiest for you to use. Some prefer their Google account because it is on their android phone whereas other people prefer Microsoft because their accounts can be used as Exchange accounts within Outlook on their Desktop PC as well as being accessed online giving them the best of both worlds especially if they are a power user.

I will now briefly go over the various options and what I thing about them.

Use each account separately

If you really must, you can just ignore this section except for selecting a primary email address to use.

Forward all emails to one address

Within each of the 3 email providers you can set an option to forward your emails to a specified email address. The advantage of this is you can forward the emails from the 2 accounts you don’t really use the email address on to your primary email allowing you always see email from all 3 accounts in the one place. However when you reply to these emails it will use your primary email address which is ok.

There are different forwarding options but I would always choose to forward and delete emails. This stops there being 2 copies of emails. Yahoo does not allow the deletion of emails when forwarding so in this case I would select ‘Forward email and mark as read’ and then every now and again you can going in and delete them manually.

Connected Accounts

I have not really used this feature but again it is available in all 3 platforms and allows you to manage all of your email accounts in the one platform.

If you use outlook.com as your primary account and connect you Gmail account into it you can send and receive Gmail emails from outlook.com but these emails will be sent form Gmail and stored in Gmail. You have only added a portal to them by connecting your accounts. You still have to curate multiple accounts and I would not recommend this.

When you add your Yahoo Mail, Gmail, or other email accounts to Outlook.com, you can send and read email messages from those accounts without switching between email apps. Each email account you add to Outlook is called a connected account.

Read the article Add your other email accounts to Outlook.com - Office.com it explains what a connected account is and how to set it up for outlook.com addresses.

Forward to a non-social email account

If you already have a normal email address you use such as test123@example.co.uk that you have used for years you could always forward all emails to that address and use it as your primary account. You should be aware that unless you go some extra effort then all emails you send from that account will be from that email address (test123@example.co.uk) which sort of breaks the different identities policy I have been trying to setup.

See: Configure an Outlook.com account to use a 3rd party email address | QuantumWarp

Email Account Clean-up

Now you have all of your brand new email accounts configured as you want it would be a good time to delete and get rid of any other emails addresses that you had or partly used. This keeps things neat. Before deleting them, make sure you will not be removing access to any services you have signed up for.

Checklist

  1. Select required Online Social Identities
  2. Select an appropriate username
  3. Create the required email addresses with the selected username
  4. Configure recovery information (Mobile Phone and Email)
  5. Enable Two Factor Authentication (optional)
  6. Select a primary email account
  7. Setup email forwarding to your primary email account

Published in Blogging
Sunday, 04 February 2018 15:14

My Akeeba Release System Notes

Akeeba Release System is an extension that allows the administration and creation of update streams for both Joomla extensions in the XML format and for other software packages using a standard INI format that is compatible across many programming platforms. ARS also is capable of automatically submitting your Joomla extensions updates to the JED automatically.

The instructions for ARS are not so easy to follow until you know some key things and I will clear these up. Read this article first and then follow the official documentation because they will then make more sense. This article is based on Akeeba Release System v4.2.2 and the documentation available at the time.

Once you have gone through this guide you should considered the offcial wiki as your primary source of information as it is a great resource once you are going.

Understanding the structure of a repository

Consider the following example taken from the PDF, this will allow me to explain how things work.

Practical example: Software distribution

This is the kind of repositories ARS excels at. Create one category per software you want to publish. Let's say you produce an application named "Kitten Finder" and a Joomla! component named "Kitten.me". Each one of them is a category in ARS. Create one release per version of the software. For instance, "Kitten Finder" has released versions 1.0.b1 (a beta release) and 1.0 stable. Each one of the versions is a release in ARS. Each downloadable file is an ARS item. For example, you may have an installer of Kitten Finder for Windows, another for Linux, a third one for Mac OS X, a PDF with instructions and so on. Each file belonging to specific version of the application is an item in ARS.

In order to allow your visitors to browse the entirety of your repository, you will have to create a menu item to the full repository.

There are the following categorisations in ARS (in order: Parent --> Child)

  1. Visual Group
    • This should be considered as a section.
    • This is only used for displaying categories and releases on the front-end etc.
    • This does not affect any of the Categories, Releases or Update Streams hierarchy.
  2. Categories
    • Usually you have to create one category per software you want to publish.
    • QWcrm and QWGrabMeta should both have their own category.
  3. Releases
    • Think of a release as a group of files belonging to the same chronological order. Each release is supposed to supersede the directly previous release (the one with a higher ordering number than itself).
    • Each release is a different version of the software
    • QWcrm 3.0.0 and QWcrm 3.0.1 should both have their own release.
  4. Items
    • These what your visitors download. We chose to name them "items" instead of "files" because they can either be physical files stored on your server or links to a remote resource served from a different web server.
    • A downloadable file can either be a local file stored on the server or a remote file via a link.
    • The reason a Releases can have many Items is because you might have compiled the software for multiple operating systems such as Windows, Linux, Mac or Android and each of these will need their own record in ARS but are for the same release. It is also possible that you create documentation in a PDF for this version of the software and that again will need it's own record in ARS and so on.
  5. Update Streams
    • These are the update files builtas either XML or INI files which disemminate the softwares update information
    • Offer updates to your software in two formats: INI files easily usable by any and all programming languages or automatic creation of Joomla! XML extension update streams and JED Remote XML files. As soon as you publish a new version, all your clients using a modern version of Joomla! will be able to automatically upgrade to it. Moreover, the Joomla! Extensions Directory will be notified of the new version and update its listing. No extra file creation or manual action is necessary.

NB: The repository is logically separated to two sub-repositories. By default, they are named "Official Releases" and "Development Releases" https://github.com/akeeba/release-system/wiki/Understanding-the-structure-of-a-repository

Example Usage

The following examples should help you work out how the different areas of ARS fit together.

Here are some example Visual Group > Categories > Releases > Items designs...

QWcrm

  • Visual Group - QWcrm Downloads
  • Categories - QWcrm
  • Releases - QWcrm
  • Items - QWcrm-3.1.2.zip

QWGrabMeta

  • Visual Group - Joomla Downloads
  • Categories - QWCGrabMeta
  • Releases - QWGrabMeta
  • Items - plg_qwgrabmeta-v1.00.zip

Open Source Software

  • Visual Group - Downloads
  • Categories - Software, Documents
  • Releases - Joomla, WordPress, HowTo Documents
  • Items - JoomlaInstall.zip, WordPressInstall.zip, HowToJoomla.pdf

School Documents

  • Visual Group - Documents
  • Categories - Newsletters, Policy Documents, Job Applications
  • Releases - Whole School Newsletter, Sports Newsletter, Maths Newsletter
  • Items - January.pdf, Spring.pdf, SportsDay2012.pdf

Learning Resources

  • Visual Group - Learning Resources
  • Categories - Software, Documents
  • Releases - Gimp, Flash, Word
  • Items - GimpInstall.zip, FlashInstall.zip, MathsResource.doc

Settings Explained

I will go through the different ares of ARS and their settings so i can clear up any missing infromation.

Visual Group

The Visual Group seems to be optional because I created a Category without a Visual Group. A Visual Group should be considered like a section for displaying downloads and is only needed when displaying downloads on the Front-End.

This can only be created from the Control Panel where you will see a icon on the right. For some reason it is not a tab aswell.

  • Title - This is the title of the Visual Group displayed to your site's visitors
  • Published
    • Should it be visible to your users? Set to off to hide the Visual Group from view.
    • There are no other permissions for this feature.
    • This does not affect any of the Categories, Releases or Update Streams availablity
  • Description
    • Use the WYSIWYG editor to type in a description to be displayed for this Visual Group. You can use plugins freely.
    • This can be used to group Normal and BleedingEdge downloads together.

Category

Category management · akeeba/release-system Wiki · GitHub

  • Title - This is the title of the category displayed to your site's visitors
  • Alias
    • The standard Joomla SEF alias and if you leave this blank as it will get filled in automatically.
    • This is the alias (slug) appended to the URL pointing to that category's page. It's best to keep it short and only use lowercase unaccented Latin letters (a-z), numbers (0-9), dashes and underscores. Anything else may behave oddly.
  • Visual Group - Select a Visual Group that you have already created. This is optional.
  • Directory Type
    • Normal - In a Normal directory you have to manually create releases and items.
    • BleedingEdge -In a BleedingEdge directory all subdirectories created in the selected Files Directory will result into new releases being created and published without your intervention. Similarly, files uploaded in the subdirectories will be automatically turned into items and published.
  • Files Directory
    • This is the path to a directory which contains the files to be published in this category's releases.
    • The paths are given relative to your site's root.
    • This is the folder you actually put the software packages in to be downloaded.
    • Example folder names are:
      • qwcrm
      • com_qwcrm
      • plg_qwgrabmeta
      • If you have a version package with multiple items you might consider putting them in the same folder (Normal only, All updatable items in BleedingEdge mode need their own folder).
    • You can not create a category without assigning it a files directory.
    • You can use the same directory in multiple releases.
    • You can use directories in completely different base folders on each release.
    • If a directory doesn't already exists it will not be created, you will see an error message and your category won't be created.
    • Please note that ARS uses Joomla!'s API to filter directories. This limits you to using directories under your site's root.
    • If you want to protect your files from direct web access, please create a .htaccess file with the following content inside your files directory:
  • Published - Should it be visible to your users? Set to off to hide the category from view.
  • Access - The Joomla! access level / view level to apply to the release. You can create custom view levels, effectively choosing which user groups should be granted access.
  • Show unauthorised links - Unauthorised links refers to the downloadable items
  • Subscription Levels
    • This requires Akeeba Subscriptions to be installed.
    • Configure a subscription in Akeeba Subscriptions and then you can limit/control this category by those configured subscriptions.
  • Redirect URL for unauthorised - This option enables the redirect to the specified URL when the download is not authorised.
  • This is software is still supported - If enabled a tag on the frontend will say 'This software is no longer supported' or similiar.
  • Language - Leave set to All for automatic language handling or manually force a specific language.
  • Description - Use the WYSIWYG editor to type in a description to be displayed for this Category. You can use plugins freely.
  • Permissions - This is fine grained permission for the category. Do not change these unless you know what you are doing and need to.

Release

Release management · akeeba/release-system Wiki · GitHub

  • Category - Choose the category where the release will be placed in.
  • Version - Type in the title of this release. Since ARS is optimised for software delivery, we call this field Version, but you may type in anything you want, not just numbers.
  • Alias
    • The standard Joomla SEF alias and if you leave this blank as it will get filled in automatically.
    • This is the alias (slug) appended to the URL pointing to that release's page. It's best to keep it short and only use lowercase unaccented Latin letters (a-z), numbers (0-9), dashes and underscores. Anything else may behave oddly.
  • Maturity - If you are using ARS for software distribution, select the maturity level of this release. The possible options are Alpha, Beta, Release Candidate and Stable.
  • Hits - How many times the release page has been displayed. You can use this field to alter that number. Do note, that you do not need to change it on copied releases; copies will automatically receive a Hits number of zero.
  • Published - Should it be visible to your users? Set to off to hide the category from view.
  • Access - The Joomla! access level / view level to apply to the release. You can create custom view levels, effectively choosing which user groups should be granted access.
  • Show unauthorised links - Unauthorised links refers to the downloadable items
  • Redirect URL for unauthorised - This option enables the redirect to the specified URL when the download is not authorised.
  • Subscription Levels
    • This requires Akeeba Subscriptions to be installed.
    • Configure a subscription in Akeeba Subscriptions and then you can limit/control this category by those configured subscriptions.
  • Released On - The release date for the Release.
  • Language - Leave set to All for automatic language handling or manually force a specific language.
  • Description - Use the WYSIWYG editor to type in a description to be displayed for this release. You can use plugins freely. (First WYSIWYG)
  • Release Notes - Another text field where you can add release notes such as a changelog or specific requirements. (Second WYSIWYG)

Item

Item management · akeeba/release-system Wiki · GitHub

  • Release - Choose the Release to which the Item belongs.
  • Title - The title of the item used to display it to your users. If you are using Automatic Descriptions you don't have to fill it in.
  • Alias
    • The standard Joomla SEF alias and if you leave this blank as it will get filled in automatically.
    • This is the alias (slug) appended to the URL pointing to that category's page. It's best to keep it short and only use lowercase unaccented Latin letters (a-z), numbers (0-9), dashes and underscores. Anything else may behave oddly.
    • Tip: Leave it blank. As soon as you select a file or type in a link, ARS will automatically fill it in before your eyes. Didn't I already mention that ARS is designed to save you lots of time? But please note that ARS will also include the extension of the file (e.g. .zip) in the alias. Unless you've modified your .htaccess to redirect all extensions to Joomla!, this might cause 404 errors. In this case, just edit the automatic alias, removing the dot.
  • Type
    • This decides what type of download type this item has, File or Link.
    • File items allow your visitors to download files stored on your server, the most common case of downloads.
    • Link items allow you to link to a file or even a web page by its URL, internally or externally.
    • Using the Link type will not reveal the URL of the external item to your visitors until they proceed with downloading the item.
  • (Selected File Type Options)
    • Linked item URL - If you chose the Link type, type in the full URL to the file or web page you want to link to. Oh, yes... As soon as you click anywhere outside this field, the Alias will be filled in automatically based on the contents of the URL field if and only if you had an empty alias.
    • Filename - If you chose the File type, this displays a drop down of files found in the category's Files Directory and all of its subdirectories.
  • File size - Type in the file size in bytes. Or don't. If you leave it empty, ARS will try to determine this automatically. In the case of Link items, it will try to download the linked file.
  • MD5 Signature - Type in the MD5 hash of the file. Or don't. If you leave it empty, ARS will try to determine this automatically. In the case of Link items, it will try to download the linked file.
  • SHA1 Signature - Type in the hash of the file. Or don't. If you leave it empty, ARS will try to determine this automatically. In the case of Link items, it will try to download the linked file.
  • SHA-256 Signature - Type in the hash of the file. Or don't. If you leave it empty, ARS will try to determine this automatically. In the case of Link items, it will try to download the linked file.
  • SHA-384 Signature - Type in the hash of the file. Or don't. If you leave it empty, ARS will try to determine this automatically. In the case of Link items, it will try to download the linked file.
  • SHA-512 Signature - Type in the hash of the file. Or don't. If you leave it empty, ARS will try to determine this automatically. In the case of Link items, it will try to download the linked file.
  • Hits - How many times the item has been downloaded. You can use this field to alter that number. Do note that you do not need to change it on copied items; copies will automatically receive a Hits number of zero.
  • Published - Should it be visible to your users? Set to off to hide the category from view.
  • Access - The Joomla! access level / view level to apply to the item. You can create custom view levels, effectively choosing which user groups should be granted access.
  • Show unauthorised links - Unauthorised links refers to the downloadable items
  • Redirect URL for unauthorised - This option enables the redirect to the specified URL when the download is not authorised.
  • Subscription Levels
    • This requires Akeeba Subscriptions to be installed.
    • Configure a subscription in Akeeba Subscriptions and then you can limit/control this category by those configured subscriptions.
  • Environments
    • You can pick from a preconfigured list of software enviroments e.g. Windows, linus, Joomla 1.5, Joomla 3.0 etc..
    • These all have a description and an icon that will get display on this item's page.
    • These Enviroments can be configured from the ARS Control Panel.
  • Update Stream
    • Select which update stream which you want this download to be attached to.
    • I think this is so you can have mulitple versions of the software in one stream i.e. v3.0.0, v3.1.0, v3.1.2....
    • You can save an item without attaching it to a stream.
  • Language - Leave set to All for automatic language handling or manually force a specific language.
  • Description - Use the WYSIWYG editor to type in a description to be displayed for this item. You can use plugins freely.

Update Stream

 Setting up update streams · akeeba/release-system Wiki · GitHub

  • Stream Name
    • A name for the update stream. It can be anything you want and is only used in the Joomla! XML format streams.
    • This is what Joomla! will also display as the Extension Name when it lists new available updates.
  • Alias
    • Used to construct the URL in the front-end.
    • Keep it short and sweet, but definately use something that you choose rather that the autmatic naming as below.
    • The standard Joomla SEF alias and if you leave this blank as it will get filled in automatically.
    • The automatic alias names are as follows updatestreams, updatestreams-2, updatestreams-3 and so on.
  • Extension Type
    • This is used by the Joomla! XML format update stream to description what sort of extension it is.
  • Category
    • The category where we're going to look for updates.
    • You can have more than one update streams per category. However, a single update stream can only look inside a single category.
  • Package naming pattern
    • This is a type of Regex to use to look for files for this Update Stream.
    • An update stream looks for files following a specific naming convention. You have to supply a "shell pattern" in here. This is fancy wording for saying that you provide a filename and use a single question mark (?) to match any single character or a single start (*) to match any number of characters. It's what you already use on your operating system! Only items whose File or URL field matches this pattern will be included in the update stream.
    • For instance, all Akeeba Backup Core installation packages are named com_akeeba-VERSIONNUMBER-core.zip, where only VERSIONNUMBER changes, i.e. com_akeeba-3.1-core.zip, com_akeeba-3.1.5-core.zip etc. This leads us to a naming pattern of com_akeeba-*-core.zip and that's what I would use.
  • Element
    • This is required for Joomla! update streams. It should contain the name of your extension, e.g. com_something, mod_something, plg_something etc.
    • For example, Akeeba Backup Core installs in the com_akeeba directory. This is the element name: com_akeeba
  • Site area (client_id)
    • Since Joomla! 1.7.0, all update streams must indicate the site area (frontend or backend) the extension applies to. For component, library and file extensions you must always use "Backend". For plugins, modules and templates select "Frontend" or "Backend" depending on whether your extension applies to the frontend or the backend of your clients' sites respectively.
    • This is only required for XML update streams. If you are only interested in providing INI update streams, e.g. for desktop software, simply ignore this option.
  • Folder (for plugins)
    • For all extension types except plugins, leave this blank. For plugins, this must be set to the plugin type. For example, if you have a system plugin, type in system in this box. If you have a content plugin, type in content in this box. You get the idea! This is the name of the plugins folder's subdirectory where the plugin is being installed to.
    • This is only required for XML update streams. If you are only interested in providing INI update streams, e.g. for desktop software, simply ignore this option.
  • JED Extension ID
    • This is optional and only needs to be entered for extensions listed in the Joomla! Extensions Directory (JED). This is the numeric ID of your extension as listed in the JED. This is used for the Install from Web feature integration. For more information please take a look at the Content - Akeeba Release System Latest Version plugin which contains the plumbing to actually provide the URLs you need to use for the (quite convoluted) Install from Web feature.
    • If the ID is not set I beleieve then changes to this extesnion will not cause the JED stream to be pushed to the JED.
  • Published - Unpublished streams result in empty pages which is almost the same as disabled but not quite.

 Notes

  • Disabled streams will just return a blank page with a 200 OK code.

Setting Up ARS: A Practical Example

These instructions assume you have installed Akeeba Release System.

1) Create a Primary Repository Folder

NB: This might not be needed if using a download manager such as JDownloads because ARS will only use links. Create it anyway as it won't harm.

You need somewhere for your downloadable files to be stored but ARS does not automatically create the Primary Repository folder or any other folders. Folder creation has to be done manually for some reason however the primary folder only needs to be created once.

  • Using your FTP program log in to your website's FTP and create the following folder in your website root. You can put this folder anywhere you want but within the public filesystem. This setup is my preference only.
    /arsrepo/
    
  • You now need to prevent direct linking to these files. This step is optional but highly recommended. Create a .htaccess file in your root repository folder /arsrepo/ that you just created above with the following content:
    <IfModule !mod_authz_core.c>
        Order deny,allow
        Deny from all
    </IfModule>
    <IfModule mod_authz_core.c>
        <RequireAll>
            Require all denied
        </RequireAll>
    </IfModule>

2) Create Your First Update Stream

Now select what type of repository you want and go to that section. (2a) or (2b) and i would recommend (2a) but If you want more automationtion, use the BleedingEdge (2b) option. You should repeat the choosen step as many times as you need but If you only do it once you can come back later for more software.

Although I am using a Non-Joomla software (QWcrm) for this example there is no difference except on that in Update Streams there might be different options for Joomla and Non-Joomla software.

2a) Normal (Category)

The following is a practical example on how to setup your software in ARS so you can get your first update stream working. Once you have done one, everything will be a lot easier to understand.

The option will require manually intervention, such as creating folders, i think?

NB: Visual Group does not seem to do anything, If anyone knows what it is for post a comment

Joomla Extension - com_qwcrm-3.0.0.zip

  • Create a folder /arsrepo/qwcrm/ (This assumes you repository root is /arsrepo/)
  • Upload the file com_qwcrm-3.0.0.zip to /arsrepo/qwcrm/
  • Create a Visual Group (Optional)
    • Title: QWcrm Downloads (or Non-Joomla Downloads)
    • Published: Yes
    • Description: QWcrm software including plugins and modules.
    • Click 'Save & Close'
  • Create a Category
    • Title: QWcrm (or Non-Joomla)
    • Alias: automatically gets filled in
    • Visual Group: QWcrm Downloads (or Non-Joomla Downloads) (optional)
    • Directory Type: Normal
    • Files Directory: arsrepo/qwcrm
    • Published: Yes
    • Access: Public
    • Show unauthorised links: No
    • Subscription Levels: Ignore this setting.
    • Redirect URL for unauthorised: Ignore this setting.
    • This is software is still supported: Yes
    • Language: All
    • Description: These are my releases of QWcrm and related software.
    • Click 'Save & Close'
  • Create a Release
    • Category: QWcrm
    • Version: 3.0.0
    • Alias: automatically gets filled in
    • Maturity: Stable (This assumes it is stable).
    • Hits: ignore this setting
    • Published: Yes
    • Access: Public
    • Show unauthorised links: No
    • Redirect URL for unauthorised: Ignore this setting.
    • Subscription Levels: Ignore this setting.
    • Released On: Todays Date
    • Language: All
    • Description: The Best Open Source Repairs Business CRM program available (First WYSIWYG)
    • Release Notes:This is my initial release. (Second WYSIWYG)
    • Click 'Save & Close'
  • Create an Item
    • Release: 3.0.0
    • Title: QWcrm
    • Alias: automatically gets filled in
    • Type: File
    • File name: com_qwcrm-3-0.0.zip (This will fill in the alias automatically)
    • File Size:
    • MD5 Signature:
    • SHA1 Signature:
    • SHA-256 Signature:
    • SHA-384 Signature:
    • SHA-512 Signature:
    • Hits: ignore this setting
    • Published: Yes
    • Access: Public
    • Show unauthorised links: No
    • Redirect URL for unauthorised: Ignore this setting.
    • Subscription Levels: Ignore this setting.
    • Enviroments: Select the appropriate options from the list.
    • Update Stream: If you already have an Update stream you can select it other wise you have to leave this and come back later after creating it.
    • Language: All
    • Description: Release 3.0.0 of QWcrm
    • Click 'Save & Close' (Upon saving ARS will attempt to calculate and fill in the File Size, MD5 Signature and all of the SHA Signatures).
  • Create an Update Stream
    • Title: QWcrm
    • Alias: automatically gets filled in
    • Extension Type: Components (Files might be the best choice for non-Joomla item, might add my own)
    • Category: QWcrm
    • Package naming pattern: com_qwcrm-*.zip (* = any charcters, ? = any single character)
    • Element: com_qwcrm
    • Site area (client_id) Backend (Because QWcrm is a component the should be set to Backend.)
    • Folder (for plugins): QWcrm is not a plugin so you should just leave empty.
    • JED Extension ID: QWcrm is not listed on the JED so leave empty.
    • Published: Yes
    • Click 'Save & Close' (when you save this might update the Item update stream to match, does not harm to check)
  • Check to make sure that your Category, Release, Item and Update Stream are all published.

2b) BleedingEdge (Category)

BleedingEdge (BE) categories are quite different than the Normal-type categories. You don't have to visit your site's back-end to publish and unpublish releases and items. It all happens automatically whenever you upload or delete files on your server. This can be used in conjuction with Akeeba Release Maker to almost make releasing files a 1 click affair.

  • How the BleedingEdge categories work · akeeba/release-system Wiki · GitHub - This official documentation includes details on how to write your CHANGELOG and a clear explantion of what is going on with a BleedingEdge Category.
  • If you upload a plain text file named CHANGELOG (yes, all caps and no extension), ARS will read it, compare it with the previous releases's CHANGELOG, colorize the result and use that as the ARS Release's description.This implies that you upload raw files and not zip files or I read somewhere it will extract the file and look in it, I have not confirmed this but it seems sensible. You would need to play around with this. Possibly this is uploaded within the release folder. This can be disabled in the Component options.

The following is a practical example on how to setup your software in ARS so you can get your first update stream working. Once you have done one, everything will be a lot easier to understand.

The option is the automated type for developers who do constent releases.

NB: Visual Group does not seem to do anything, If anyone knows what it is for post a comment

Joomla Extension - com_qwcrm-3.0.0.zip

  • To get the automation working you need to enable these plugins in the Joomla Plugins Manager.
    • Akeeba Release System - Bleeding Edge release maturity - Sets the maturity of Bleeding Edge releases based on the folder name suffix (e.g. _BETA for beta releases, _RC for Release Candidates, etc)
    • Akeeba Release System - Bleeding Edge automatic file diff - Automatically generates a colorised unified diff (like what GitHub does) for items automatically created in a Bleeding Edge repository.

The following is mostly the same as (2a) except for the Directory Type whichg is now set to BleedingEdge.

  • Create a folder /arsrepo/qwcrm/ (This assumes you repository root is /arsrepo/)
  • Upload the file com_qwcrm-3.0.0.zip to /arsrepo/qwcrm/
  • Create a Visual Group (Optional)
    • Title: QWcrm Downloads (or Non-Joomla Downloads)
    • Published: Yes
    • Description: QWcrm software including plugins and modules.
    • Click 'Save & Close'
  • Create a Category
    • Title: QWcrm (or Non-Joomla)
    • Alias: automatically gets filled in
    • Visual Group: QWcrm Downloads (or Non-Joomla Downloads) (optional)
    • Directory Type: BleedingEdge
    • Files Directory: arsrepo/qwcrm
    • Published: Yes
    • Access: Public
    • Show unauthorised links: No
    • Subscription Levels: Ignore this setting.
    • Redirect URL for unauthorised: Ignore this setting.
    • This is software is still supported: Yes
    • Language: All
    • Description: These are my releases of QWcrm and related software.
    • Click 'Save & Close'
  • Create a Release
    • Category: QWcrm
    • Version: 3.0.0
    • Alias: automatically gets filled in
    • Maturity: Stable (This assumes it is stable).
    • Hits: ignore this setting
    • Published: Yes
    • Access: Public
    • Show unauthorised links: No
    • Redirect URL for unauthorised: Ignore this setting.
    • Subscription Levels: Ignore this setting.
    • Released On: Todays Date
    • Language: All
    • Description: The Best Open Source Repairs Business CRM program available (First WYSIWYG)
    • Release Notes:This is my initial release. (Second WYSIWYG)
    • Click 'Save & Close'
  • Create an Item
    • Release: 3.0.0
    • Title: QWcrm
    • Alias: automatically gets filled in
    • Type: File
    • File name: com_qwcrm-3-0.0.zip (This will fill in the alias automatically)
    • File Size:
    • MD5 Signature:
    • SHA1 Signature:
    • SHA-256 Signature:
    • SHA-384 Signature:
    • SHA-512 Signature:
    • Hits: ignore this setting
    • Published: Yes
    • Access: Public
    • Show unauthorised links: No
    • Redirect URL for unauthorised: Ignore this setting.
    • Subscription Levels: Ignore this setting.
    • Enviroments: Select the appropriate options from the list.
    • Update Stream: If you already have an Update stream you can select it other wise you have to leave this and come back later after creating it.
    • Language: All
    • Description: Release 3.0.0 of QWcrm
    • Click 'Save & Close' (Upon saving ARS will attempt to calculate and fill in the File Size, MD5 Signature and all of the SHA Signatures).
  • Create an Update Stream
    • Title: QWcrm
    • Alias: automatically gets filled in
    • Extension Type: Components (Files might be the best choice for non-Joomla item, might add my own)
    • Category: QWcrm
    • Package naming pattern: com_qwcrm-*.zip (* = any charcters, ? = any single character)
    • Element: com_qwcrm
    • Site area (client_id) Backend (Because QWcrm is a component the should be set to Backend.)
    • Folder (for plugins): QWcrm is not a plugin so you should just leave empty.
    • JED Extension ID: QWcrm is not listed on the JED so leave empty.
    • Published: Yes
    • Click 'Save & Close' (when you save this might update the Item update stream to match, does not harm to check)
  • Check to make sure that your Category, Release, Item and Update Stream are all published.

This is additional to (2a) for obvious reasons.

  • Upload the Files (ftp or other method).
    • Create a folder /arsrepo/qwcrm/3.0.0_STABLE/
    • Upload com_qwcrm-3.00.zip to /arsrepo/qwcrm/3.0.0_STABLE/
    • Done

Uploading Notes

  • You can automatically create Releases by creating a directory within /arsrepo/qwcrm/
  • You can automatically create Items by creating adding files within a release directory i.e. /arsrepo/qwcrm/3.0.0/ or /arsrepo/qwcrm/3.0.0_BETA/
  • If your rename or delete files/directories then the corresponding ARS records will become unpublished.
  • If you include _ALPHA, _BETA, _RC or _STABLE as a suffix when you create your new directories, ARS will know to initialise the directory's maturity status accordingly. Otherwise your Release will default to ALPHA, and you will have to manually change it as required.
  • The different maturity settings are possibly used by Joomla when you choose the update channel you want.

3) Check The Update Stream Works

You have now successfully created an update stream for you software and you will now see on the Update Streams page a new record for it. On this record you can see the links to your various stream types. Click on the INI link to see if it is working. If you get a message like below something is wrong. Most likely you have not gone back to your new QWcrm Item and selected the new Update Stream. In the examples below you can see where all of the different configurations end up.

Failed INI file

; Live Update provision file
; No updates are available!

Successful INI file

This is an example INI file that is generated by ARS.

; Live Update provision file
; Generated on 2019-11-15 11:29:18 GMT
software="QWcrm"
version="3.0.0"
link="https://quantumwarp.com/index.php?option=com_ars&view=Item&task=download&format=raw&id=1"
date="2019-11-13"
releasenotes="<p>This is my initial release.</p>"
infourl="https://quantumwarp.com/index.php?option=com_ars&view=Items&release_id=1"
md5="f7dbe1333891bdd4e599e3520050bb57"
sha1="cd0361655c6722e667ab42ae275f3068cec96720"
sha256="625a1bfe329438ded94386a50b56d68962f0ab610a1bd300c5de8a8b7cf1beea"
sha384="7c9271509978ea3f8ab252f9c4ad9910568a5c07fd6b5ff068fb3545fb792e912017b73f984867283ecb6c652d8143ff"
sha512="e08b53f359f4ab8d62c87c1fc1b10338446818220182cb46bd4cb68435692b24887707ce114835e27514b9bc080b8b560402e7ae366aca3f449e874960edf02b"
platforms="joomla/3,php/7.3"

Successful XML file

This is an example XML file that is generated by ARS.

<?xml version="1.0" encoding="utf-8"?><!-- Update stream generated automatically by Akeeba Release System on 2019-11-15 11:31:11 GMT -->
<updates>
    <update>
        <name><![CDATA[QWcrm]]></name>
        <description><![CDATA[QWcrm]]></description>
        <element>com_qwcrm</element>
        <type>component</type>
        <version>3.0.0</version>
        <infourl title="QWcrm 3.0.0">
            <![CDATA[https://quantumwarp.com/index.php?option=com_ars&amp;view=Items&amp;release_id=1]]>
        </infourl>
        <downloads>
            <downloadurl type="full" format="zip">
                <![CDATA[https://quantumwarp.com/index.php?option=com_ars&view=Item&task=download&format=raw&id=1&dummy=my.zip]]>
            </downloadurl>
        </downloads>
        <tags>
            <tag>stable</tag>
        </tags>
        <maintainer><![CDATA[QuantumWarp]]></maintainer>
        <maintainerurl>https://quantumwarp.com/</maintainerurl>
        <section>Updates</section>
        <targetplatform name="joomla" version="3"/>
        <client>1</client>
        <folder></folder>
        <ars-phpcompat version="7.3" />
    </update>
</updates>

NB:

4) Create Basic Menu System

These are the a bridged instructions from Setting up your menu items for best results · akeeba/release-system Wiki · GitHub which are worth a read.

  • Create a new 'hidden' menu with these settings (i.e. hidden = dont create a menu module for this menu):
    • Title: ARS Hidden
    • Menu Type: ars-hidden
    • Description: ARS menu structure, do not publish
  • Create our Base menu item for the repository in our new hidden menu:
    • Menu Type: Entire Repository
    • Menu Title: Update Server
    • Alias: updates
  • Create one menu item for each of your ARS Categories. Each menu item needs the following setup:
    • Menu Type: Akeeba Release System, Category View
    • Parent Item: select the menu Entire Repository menu item you created above
  • Create Visible menus. To make these visible to users we shall go ahead and create menu aliases to them in a normal menu
    • Select a normal menu you want this link and create a menu item as follows
    • Menu Item Type: System Links, Menu Item Alias
    • Menu Item: Update Server (In the Menu Item drop-down: Choose one of the ARS Hidden menu items.)
  • Create an Update Stream for each piece of software in the 'ARS Hidden Menu'
    • Create a new menu item of Type XML Stream Feed under the relevant category
    • Select the 'Update Stream' in the 'Basic options' tab.
  • Create an JED Stream for each piece of software in the 'ARS Hidden Menu' if you have published them to the JED.
    • Create a new menu item of Type JED Remote XML under the relevant category
    • Select the 'Update Stream' in the 'Basic options' tab.
    • Submit this new URL to the your JED listing.

NB:

  • I am not use why the menu has to be hidden if you are wondering. You can probably just use the menu published and not bother with 'Menu Aliases'. I suspect it is if you want create XML Stream via menu items.
  • You can just use the non-sef direct URLs that ARS generates and not require menu items for the strems.
  • Select and build your menus as you see fit following the basic format above. Create them in the hidden menu and then use 'Menu Aliases'.
  • Menus are not used to create the XML update streams but you can do if needed. The offcial wiki says "You may have noticed the absence of any reference to JED Remote XML, XML Master Feed, XML Stream Feed and XML Category Feed menu items. Do not create such menu items at all! Due to the way Joomla! routing works you may end up with update URLs that have broken download or information URLs." - I think this applied to old version of Joomla and ARS.
  • You dont need any visible menu items for ARS to work.
  • You cannot add XML to the end of a menu item.
  • The setups of ARS I have seen always use the Non-SEF URLs for their streams.

5) Further Configurations

You should look at these various different settings to see if you need to change any of them.

  • Component options - The standard button at the top right of the component. Various settings in here you need to got through.
  • Enviroments - Tags that are used in the XML update streams to denote the compatible platform. Format: platform name/platform version, e.g. joomla/1.6 for Joomla! 1.6
  • GeoIP Plugin - This needs installing so you can

6) Other ARS Plugins

  • Content - Download ID - Displays the Download ID for the currently logged in user. Use as {downloadid} anywhere in your articles.
  • Button - ARS Item - Displays a button to make it possible to link to ARS download items. Displays a popup allowing you to select an ARS item.
  • System - Akeeba Release System integration with Install from Web - Allows the Akeeba Release System's Latest Release plugin to produce URLs which work with the Install from Web feature introduced in Joomla! 3.2. If a user comes to your site from the Install from Web feature the generated URL will take the user back to their site's Extensions Manager page with the download URL pre-filled. You will need to have both this and the Latest Releases plugins enabled for this feature to work. (Enabled by default)
  • Content - Akeeba Release System Latest Releases - Allows you to display the latest release of a category or generate links to it or specific items under it. (Enabled by default)
  • GeopIP Plugin - Akeeba Release System require an extra plugin to be installed on your site, "System - Akeeba GeoIP provider plugin", in order to be able to determine the country the downloads are started from.

7) Features that need configuring if you want them

  • Automatic item descriptions - Used in conjuction with BleedingEdge you can apply preconfigured item descriptions to specified packages. It is not clear if it is required for BleedingEdge to work.
  • Download IDs - Like a license key. It is a unique hash so a user does not have to be logged it to get a download.
  • GeoIP Logging - Ip to location via a database
  • Amazon S3 integration - Use bandwidth from Amazon.
  • No Access URL - When a user does not have access you can send them to a URL which is better. A fail example is shown below:
    This software is a commercial product and cannot be downloaded directly. The only way to download it is either through your QuantumWarp account or automatically by Joomla! updates with a correctly configured and valid license code in the extension's configuration.

Notes

General

Enviroment Tags

  • If you do not have a Jooma Environment Tag set for an item then the XML stream will not work correctly. The item will be missing from the stream. Information found here Update Screams. In paticular it is the word Joomla in the following example that is the control Joomla/3.0.
  • If you look in ARS code the Environment Tag is used for display control for the various streams. Search for = 'joomla' to find the locations. It is
  • the PHP Tag is the other special case. This is used to set, if found, specific tags in the update stream i.e. <ars-phpcompat version="7.3"/> which are used for the FOF (Akeeba Framework of Frameworks) built into Joomla to determine as to wether that Joomla Servers PHP version is suitable for the update.
Published in Extensions
Monday, 29 January 2018 14:42

My RealFaviconGenerator Notes

These are the settings and notes I made whilst using the RealFaviconGenerator service to generate my Favicon pack. This is an excellent service and I would recommend making a donation, it is well worth it.

Why is the favicon.ico not enough

Because of the use of apps, the multitude of operating systems and how they handle websites, bookmarks and other features you need many different versions of your logo icon files along with the favicon.ico to allow for the smooth operation of bookmarking and other things. This also helps keep your branding consistent.

Some icons require being declared in the html, some have default locations and usually these default locations can be changed by using declared HTML.

This is where RealFaviconGenerator comes in handy the website will generate all of icons in the formats you need along with the relevant code whilst giving you the ability to configure the process with various options.

My Starting Point.

  • I have used ‘Quantum Warp’ instead of ‘QuantumWarp’ for titles because the single word was to long to be on one line on my android phone causing the word to split into ‘QuantumWar’ on the first liine and 'p' was on a line on its own which did not look good.
  • I used my Square Logo SVG file. SVG are scalable without loss and it is my source file.

SVG

  • if you use a SVG and you have used any fonts, these will be be substituted, so either change them into proper objects or export you logo as a (512x512) PNG and use this as the source to prevent your logo deforming. The viewbox on my SVG was set to (512x512). This should not make any difference but it is a good starting point because my logo exports easily as (512x512).

Optimal Size

  • (512x512) is a nice standard size icon size.
  • The Google Play store requires you to supply them with a (512x512) icon file so they can downscale it as required.
  • When using a SVG as a source the largest Android Chrome icon created is (512x512). If you use a (512x512) PNG then the same Android Chrome (512x512) icon will be created, but if the supplied PNG is smaller then the largest Android Chrome icon created will be the largest Android Chrome icon size that can fit into the PNG resolution.

What this means is that is is prefered that you supply either a SVG or a PNG (512x512) to get the best results.

Notes

  • I recommend you read RealFaviconGenerator FAQ
  • Issues can be reported at GitHub showing the project is still very much alive.
  • The favicon.ico generated at RFG is in True Colour
  • The favicon includes (16x16, 32x32, 48x48) this seems to be the industry standard

RFG Links

There is more than a favicon generator at this site.


Settings I used - RealFaviconGenerator

After reading the FAQ I used these settings. Some of the options not used are there for exotic applications or scenarios which are not needed by me so unless you know about them don’t bother.

Favicon for iOS - Web Clip

Settings

  • Add a solid, plain background to fill the transparent regions
    • Background colour - #ffffff
    • Margin size - Leave as is (4px)

Assets

Why is apple-touch-icon.png a 180x180 picture? (From FAQ)
apple-touch-icon.png is sometimes designed as a 57x57 picture (non-retina iPhone on iOS6). It is actually safer to design as a 180x180 picture (iPhone 6 Plus with iOS8) and let the platform resize it as needed. This is how Apple is doing it for his own web site (credits: Mathias Bynens). – this means only this 1 high qualiy icons is needed

Why do you generate a precomposed favicon for iOS? (From FAQ)
The precomposed icons (eg.
apple-touch-icon-precomposed.png as opposed to apple-touch-icon.png) are deprecated since the release of iOS7 and older versions can perfectly cope with their absence. They just take the non-precomposed icon and apply the necessary effect(s). – this means the precomosed icons are only needed for old systems

  • iOS 7 and Later
    • Leave off
  • iOS 6 and Prior
    • Leave off
  • Miscellaneous
    • In the HTML, declare only the icon with the highest resolution – Leave on
    • Generate the corresponding precomposed icons – leave off

Dedicated picture

  • Leave as is

Favicon for Android Chrome

Main settings

  • Add a solid, plain background to fill the transparent regions.
    • Background Colour: #ffffff
    • Margin size (for a 96x96 icon) = leave as is (8px)
  • App name = Quantum Warp
  • Theme color = #ffffff

Options

Standalone option loads your website, after displaying a splash screen but without the navigation bars. This gives the illusion of an application. This is run in android like a separate application and not through your browser. It is all controlled througha manifest.json file which has to be declared in your header. The splash screen shows your logo and site description.

Assets

  • Modern versions
    • Create only recommended, high resolution icons
  • Legacy versions
    • Declare the icon in the HTML code = Leave off

Dedicated picture

  • Leave as is

Windows Metro

Settings

  • Colour #00aba9 (Teal) / #4db2b3
  • Use a white silhouette version of the favicon.

Assets

RFG used to generate 5 tile icons for Windows. Now there is only one. Why?
…..When they add your site to their homescreen, your visitors are presented all the available icons, letting them pick the one that fit their device best. Although this is a nice feature, the Metro interface is probably not widespread enough to justify the systematic creation of 4 icons. A single one is a good default. – what this means is that you only need the one icon ‘Medium, square icon’,  the rest are nice but not used enough.

  • Windows 8.0 / IE 10
    • Medium, square icon, declared with two HTML markups – Leave off
  • Windows 8.1 and 10 / IE 11 and Edge
    • Small, square icon = off
    • Medium, square icon = on
    • Big, square icon = off
    • Rectangular icon = off

Dedicated picture

  • Leave as is

macOS Safari

settings

  • Use a silhouette of the original image.
  • Theme Colour: #4db2b3 (my normal green)

Dedicated picture

  • Leave as is

Favicon Generator Options

Path

I don’t have that many assets to put in the root. If I generated all of them I might consider putting them in a folder on their own but there has been a reduction in assets required

  • I will place favicon files (favicon.ico, apple-touch-icon.png, etc.) at the root of my web site. Recommended.

Version/Refresh

  • This is a new web site, nobody visited it yet. So there is no "old" favicon and no caching issue.

Compression

  • Very high quality, very low compression factor = about 64%

Scaling algorithm (not present on SVG, so for SVG assume Mitchell)

Mitchell and Lanczos are very similiar (not much in it). Lanczos seems to be the preferred scaler on the internet because it provides sharper images where as Mitchell blurs images to make them look better. If you are using pixelart then ‘nearest neighbour’ is better.

  • Lanczos

App name

This despite its name controls the shortcut name. Either it is got from the page title (which in Android Chrome add you can edit before adding to your desktop) or you can manually set it.

  • Specific app name, override the page title. = Quantum Warp

Additional files

  • Generate README.md = on
  • Generate html_code.html = on

Now Generate Your Icons

Click on the generate button icon and you will be taken to the download page where the following types of packages are available

  • HTML5 (Default)
  • XHTML
  • Jade
  • Grunt
  • Gulp
  • Node CLI
  • RoR
  • NET Core
  • Google Web Starter Kit
  • RFG API

I am not sure what the difference is, possibly the code snippets created or different files supplied with the icons.

Follow the onscreen instructions (Example shown below) and you should also make a copy of the generated HTML code because it is not within the package.

Bug Warning: Currently when you use an SVG for the source file all versions of the mstile icon are generated. You should delete all but mstile-150x150.png, unless you have selected to generate all of the mstiles.


Example HTML Code

  • Download your package: (compression rate: 64%)
  • Extract this package in the root of your web site. If your site is http://www.example.com, you should be able to access a file named http://www.example.com/favicon.ico.
  • Insert the following code in the <head> section of your pages:
    <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
    <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
    <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
    <link rel="manifest" href="/manifest.json">
    <link rel="mask-icon" href="/safari-pinned-tab.svg" color="#4db2b3">
    <meta name="apple-mobile-web-app-title" content="Quantum Warp">
    <meta name="application-name" content="Quantum Warp">
    <meta name="theme-color" content="#ffffff">
  • Optional - Once your web site is deployed, check your favicon.

Done !!!

Rounded Corners for Android Chrome

Currently there is no rounded corners option for the Android Chrome icons in RFG but the developer is aware of it and here are some links to the reported issue:

Published in Media

This article will cover some of the favicon cache issues you get when working with Windows 10 and Firefox 56.0.2 (64-bit), but the information will probably apply to other setups.

If your Favicon is cached and you cannot unchache the icon then this article will guide you through the process of fixing that and why.

Where does an Internet Shortcut icon come from?

Internet Shorcuts are handled by your default browser. There are 2 ways to create an Internet Shortcut.

The following article goes into some depths about this. How do I set a custom icon for a desktop URL shortcut? - Ask Leo!

  • Most of the Windows system icons are stored in C:\Windows\System32\shell32.dll
  • The World icon is stored in C:\Windows\System32\url.dll

Right Click

On the Windows desktop, right click and create a new shortcut but using a URL as the location. This will create a shorcut that uses the Firefox default icon but I have seen it use the favicon before now.

The icon created typically looks like:

Right Click Icon

With the code inside the shortcut:

[{000214B0-0000-0000-C000-000000000048}]
Prop3=19,11
[InternetShortcut]
IDList=
URL=https://quantumwarp.com/

Drag and Drop

In Firefox highlight the URL in the address bar and drag it to the Windows desktop.

This method always creates a shortcut using an icon created by using the Favicon (48px or highest quality layer in the icon) stored in Firefox and then super imposes this on a white background. This leads to a very small icon in the middle of a white square. a lot of people complained about this so it is possible to change this behavious to use the normal Firefox icon. If the icon does not exist in Firefox then the icon will be grabbed from the website via Firefox internally and the same process will occur. If no Favicon exists then you might see a World icon.

Some other browsers might support this feature but I have not tested them.

The icon created could looks like one of these:

Drag and Drop Icons

As you can see it has used the URL title for the description, this can be changed by renaming the shortcut.

With the code inside the shortcut:

[InternetShortcut]
URL=https://quantumwarp.com/
IDList=
HotKey=0
IconFile=C:\Users\testuser\AppData\Local\Mozilla\Firefox\Profiles\727ui0od.default-1577462149946\shortcutCache\TiE1mKLHrw+Is5_yDymu0w==.ico
IconIndex=0

Favicons not showing correctly in File Explorer but do show correctly in Firefox

This is an easy one to explain (after a lot of research) but first you need to know the process Windows goes through to create the shortcut.

The Process

When creating an internet shortcut via drag and drop the following occurs:

  1. User drags the URL from Firefox
  2. Firefox checks to see if it has a Favicon is in its Favicon cache (favicons.sqlite) for the given URL:
    • Icon present in cache - If there is a Favicon in the cache Firefox uses it.
    • No icon in cache - Firefox will attempt to download the favicon.ico from the URL, if success it will add the favicon.ico to the cache and use this icon. If there is no favicon.ico found then Firefox will use one of the following icons default Firefox icon, the World icon or White Paper icon instead. Firefox now skips to Step 5.
  3. Firefox now check if it has an icon in its shortcutCache:
    • Icon present in cache - Firefox will use this cached icon.
    • No icon in cache - Firefox creates an icon of the URL and adds it to the cache by creating an icon (A white square with the favicon in the middle which looks really small) in the /shortcutCache/ folder. The favicon layer used to create a shortcut icon in QuantumnWarps case is (48x48) but Firefox might use the highest resolution layer available. There seems to be a bug, even if there is no icon in this cache but the icon has previously been cached in the windows IconCache then an icon location is still sent back to Windows.
  4. Firefox now gives Windows the location of the custom icon.
  5. Windows checks its own IconCache for the URL to see if there is already an icon:
    • Icon present in cache - Windows will use this cached icon.
    • No icon in cache -Windows adds the supplied icon to the IconCache, and will use this cached icon.
  6. Windows now builds the shortcut with the supplied icon.

Cause

As you can see there are 3 caches involved, this is where the issue creep in. The favicon might be correct in Firefox but because Windows has its own independent cache the old version can persist within the Windows cache.

Solution

The only way to get a Windows Internet Shorcut Icon to have an upto date icon is to:

  1. Wipe the Firefox Favicons Database
  2. Wipe the Firefox Shortcut Cache
  3. Refresh/Wipe the Windows Icon Cache
  4. and then re-create the icon. (Not always required, but can speed things up)

NB: Firefox Favicons stored in the database expire after 7 days but I do not know if that causes the Internet Shortcuts Icons in the shortcutCache to be automatically updated or if you need to visit the URL in question or they do not get updated at all. Depending on the answer you might only need to wipe/refresh the Windows Icon cache if the favicon that you need to update is older than 7 days. One further thing you could try is to set the expiry data in the Firefox database for all of the required Favicons to 0 or another time in the past.


Firefox Favicon Caching

I have changed my favicon on my site but my Firefox Bookmark icon has not changed. This is because the favicon is cached but not within the normal Firefox file cache.

You can possibly bypass this problem if you use versioning on your favicon by using the following code to declare your favicon.ico changing the variable when you make change.

<link rel="shortcut icon" href="/favicon.ico?v=QWr4XjEpXx">

Disable the use of Favicons for Internet Shortcuts

You can disable the use of Favicons for Internet Shorcuts by modifying some Firefox settings in about:config, this also assumes Firefox is the default browser of Windows.

In about:config set these options to false and restart the browser.

browser.chrome.favicons
browser.chrome.site_icons

The original article from HowToGeek -  Quick Tip: Disable Favicons in Firefox | HowToGeek

Location of Favicon Cache

When you visit a site in Firefox it caches the favicon.ico, favicon-16x16.png, favicon-32x32.png (only 1 of the png is stored, 16x16 if both present).

It caches them in it's own database as BLOBs and the location varies from version to version. It only ever grabs the following layers 16/32/48.

FF <55 - %AppData%\Mozilla\Firefox\Profiles\.default\places.sqlite
FF 55+ - %AppData%\Mozilla\Firefox\Profiles\.default\favicons.sqlite

After research I can confirm the expiry date set on all favicon assets in the database is 7 days. I have not found anywhere that this can be changed. It should also be noted that changing caching options in your .htaccess seems to make no difference.

Firefox 55.0 got a new storage system for Favicon data.

Moved from the places.sqlite file into its own 'favicons.sqlite' file, along with adding two temporary storage files 'favicons.sqlite-wal' and 'favicons.sqlite-shm' which are used while Firefox is running. Then as Firefox is closed the temporary data is written to the main 'favcions.sqlite' file.

The goals for the new storage system include saving the new Favicon with the newly saved bookmark (vs being saved upon the first use of the new bookmark) and the ability for Favicons to be Sync'd (although I'm not sure if the Sync service has been updated just yet).

Favicons Disappear After 55+ Updates | Firefox Support Forum | Mozilla Support

Clear Firefox Favicon Cache

So for those of us who are developing our sites often we need a way to be able to empty the favicon cache. This is not always as easy as it seems so I will outline what works.

Option 1

  • Download and install DB Browser for SQLite. (You could also try the addon SQLite Manager but I have not tried this.)
  • Quit Firefox (close all open Firefox windows).
  • Open the following database with DB Browser. Your profile name might be different, so change as required.
    %AppData%\Mozilla\Firefox\Profiles\.default\favicons.sqlite
  • Click on the 'Browse Data' tab. All you icons will now be listed.
  • Select the favicons you want to delete.
  • Click the 'Delete Record' at the top right.
  • Write the changes.
  • Done, you can now restart Firefox.

Option 2 (not tested)

  • As above but instead of deleting the record you can set the expiry date to 0 (or other past date). the icon in this case will stay until it is refeshed by visiting the website.

Other Options

These are a collection of links with different ways of doing this. I have not test any of them but they are for reference.

Location of the Firefox Internet Shortcut Icons

  • Create a shortcut by the Drag and Drop method
  • Edit the .url/shortcut file by using a text editor such as Notepad++
  • You will see some code similiar to that below
    [InternetShortcut]
    URL=https://quantumwarp.com/
    IDList=
    HotKey=0
    IconFile=C:\Users\testuser\AppData\Local\Mozilla\Firefox\Profiles\727ui0od.default-1577462149946\shortcutCache\TiE1mKLHrw+Is5_yDymu0w==.ico
    IconIndex=0
  • Open that folder named in IconFile and you will see all of the icons used for shortcuts. (Remember that windows has already cached these)

Clear Firefox Internet Shortcut Icon Cache

This is the easiest cache to clean.

  • Delete all of the files in:
    %LocalAppData%\Mozilla\Firefox\Profiles\.default\shortcutCache\

Notes

  • The icons have filenames like TiE1mKLHrw+Is5_yDymu0w==.ico. These are not random. Firefox is aware if an icon has been already created for this domain and will use the same icon location even if you have deleted it or if an icon for that URL exists it will re-use it. This means that Firefox must keep a reference table for URL against icon name or it is some sort of hash. I have looked through the Firefox databases and search the Windows registry but have not found anything. I might of missed it.
  • This random name also seems to be used by the Windows icon cache.

Windows Icon Cache

As of now I do not believe that there is any Windows event that expires the Icon Cache or that they have an expiry date.

How to wipe the Windows Icon Cache

Most of the delete icon cache out there refer to just deleting the IconCache.db and this is ok for Windows 7 but is not correct for windows 10. The file IconCache.db is still present in Windows 10 but is no longer used. The icons are now stored in the following folder within the files all starting with iconcache*.

%LocalAppData%\Microsoft\Windows\Explorer

Option 1 - Refresh the Cache

This is where you can refresh the icons without needing to reboot the PC.

After issuing this command, icons might not refresh but instead change into Blank Paper icons. This is probably because you have emptied the Firefox Internet Shorcut Cache and Windows cannot find the correct icon so it uses the first icon (Blank Paper) in the default icon library (C:\windows\system32\shell32.dll). You can fix this by recreating the shortcut for the URL using the Drag and Drop method, this will cause the favicon to be downloaded again consequently this Internet Shortcut icon will display correctly with the new version of the icon. You also find all other shortcuts that were using the same icon will now also be restored but using the newer icon. You do not need to recreate each one individually, it is only because the icon is missing from the shortcutCache folder that we do this.

Open a command prompt and enter the appropriate command:

For Windows 7 and 8 use

ie4uinit.exe -ClearIconCache

For Windows 10

ie4uinit.exe -show

Notes

Option 2 - Manually Delete Files

  1. Open command console with admin privileges
  2. taskkill /IM explorer.exe /F
  3. cd /d %LocalAppData%
  4. del IconCache.db /a
  5. cd /d %LocalAppData%\Microsoft\Windows\Explorer
  6. del iconcache*
  7. explorer

NB: If some of the iconcache* files do not delete, logout, log back in and repeat the process, this should be enough. Once the icons have refreshed it would not harm to reboot, this is optional.

Notes

Option 3 - Other Apps


Links

Published in Media

The following instructions are how to export a transparent PNG version of my QuantumWarp logo from a SVG using Inkscape.

Once exported to make the white version you can manually change the black to white by using paint.net

Square Logo (400 x 400 / QW)

  • Configure the layers to the square version (i.e. all in viewport)
  • File --> Export Bitmap
  • Select 'Page'
    Export Bitmap Page
  • Select desktop for output
  • Export

Wide Logo (400 x 1000 / QuantumWarp)

Option 1

  • In Document Properties (under the 'File' menu),
    Document Properties
    alter Custom size to
    Width:1000.00
    Height:400.00
  • File --> Export Bitmap
  • Select 'Page'
    Export Bitmap Page
  • Select folder for output
  • Export

Option 2

  • Configure the layers to the long version
  • File --> Export Bitmap
  • Select 'Drawing' (Custom might work the same.)
  • You will get some settings like this below
    Export Bitmap Drawing
  • Change the settings in this order
    x0 = 0.000
    y0 = 0.000
    x1 = 1000.000
    y1 = 400.000
  • This should give
    Width: 1000px at 90.00 dpi
    Height: 400px at 90.00 dpi
  • Select folder for output
  • Export
Published in Media
Friday, 19 January 2018 12:56

JDownloads - Layout Previews

This page shows you what the different standard layouts that come installed with JDownloads look like so you can easily choose what you want.

There are some more layouts available at JDownloads.com in the Layout Section and these already have images and descriptions.

 

Categories

Defines the layout of the categories as well as the download items for the use with CHECK boxes above and below the Download list.

 

Categories Example with 2 columns v3.2

Categories Example with 2 columns v3.2

 

Categories Example with 4 columns v3.2

Here is a sample layout with 4 columns. If you create your own layout with more then one column, you must observe the rules which may be found in the FAQ.

Categories Example with 4 columns v3.2

 

Standard Categories Layout for paginated Subcategories 3.2

This is a subcategory layout used in categories when subcategory pagination is enabled by the 'Show page navigation for subcategories?' option in the Frontend tab of the Configuration. This layout must not be activated because it is automatically used when the above option is selected. It is not intended as a standalone category layout.

Standard Categories Layout for paginated Subcategories 3.2

 

Standard Categories Layout v3.2

Standard Categories Layout v3.2


 

Category

Defines the layout of the Download list when displaying as a single category view.

 

Standard Category Layout v3.2

Standard Category Layout v3.2


 

Files

Defines the layout of the Download list displayed below the categories.

 

Alternate Files Layout v3.2

Alternate Files Layout v3.2

 

Files Layout Full Info v3.2

Files Layout Full Info v3.2

 

Files Layout Single Line v3.2

Files Layout Single Line v3.2

 

Files link only v3.2

Files link only v3.2

 

Standard Files Layout v3.2

Standard Files Layout v3.2

 

Standard Files Layout with Checkboxes v3.2

Standard Files Layout with Checkboxes v3.2

 

Standard Files Layout without Checkboxes v3.2

Standard Files Layout without Checkboxes v3.2


 

Download Details

Defines the layout of the Download detailed view.

 

Example Details Layout v3.2

Example Details Layout v3.2

 

Example Details Layout with Tabs v3.2

Example Details Layout with Tabs v3.2

 

Standard Details Layout v3.2 - Full Info

Standard Details Layout v3.2 Full Info


 

Summary

Defines the layout of the Download summary page with the list of those files selected for downloading. This is the page where actual dowloading is initiated.

 

Standard Summary Layout v3.2

Standard Summary Layout v3.2


 

Search Form

Defines how the form and the results from the frontend search function are shown.

 

Search Form Horizontal Layout v3.2

Search Form Horizontal Layout v3.2

 

Search Form Vertical Layout v3.2 - Standard

Search Form Vertical Layout v3.2 Standard

Published in Joomla Extensions
Friday, 29 December 2017 14:34

Move a Windows User Profile

Back your system and files up before doing anything.

Currently if you have split profile locations you cannot upgrade Windows 10. This might be the case for other operating systems.

This article came about because I had already moved my documents, pictures and music to my D: drive by changing the location of those libraries. It is an easy thing to move your libraries but I kept on finding programs such as VirtualBox created their own library folder and this was back in my profile on the C: drive so I decided that I might aswell move my whole profile on to the D: drive. There were serveral methods I came across all with various pros and cons:

  • Xcopy / RoboCopy - These softwares allow the moving of files and folders whilst keeping them permissions and other things and are what I have based this tutorial on.
  • Profile Relocator - This does not move the profiles
  • SysPrep - Using the Microsoft SysPrep you can repackage your windows installation and during this you can tell it to move your profiles. This is not an easy process.
  • USMT - The Microsoft User State Migration Tool is very powerful and complicated to configure. This has the ability to transfer profiles.
  • Copy To and Move To profile options - This has been removed in later version of Windows. I think it is present in Windows 7 and hidden in Windows 8.
  • 3rd Party Transfer Software - This software tends to be designed to transfer a profile from one machine to another but potentially can be used to move a profile from one loaction to another on the same PC
  • Symbolic Links (symlinks) - Using a symbolic link allows you to keep using the C:\Users location virtually while the real files are located elsewhere on you r PC. This has potential to be a really good solution if done right.
  • Moving Libraries - This is where you only move all of your files (Documents, Pictures and Music etc..) but not the actual profiles. This is what I original did and although it is fully supported by windows it is not my preferred option.
  • Windows Easy Transfer - This use to be the way to move profiles but it has been removed in Windows 10.

Moving your profile from one location to another on the same PC is not an easy thing to do, not any more, because you need to make sure that file permission are correct and that all references point to the new location properly. My process outlined below goes over all aspects of moving your profile correctly. This will should work on XP, Vista, Windows 7, Windows 8 and Windows 10.

One other thing to consider is are you just moving 1 User Profile or do you want to move all of your profiles in which case you will find is is also possibly to change the default location for new profiles easily.

Prerquisite Software

  • RoboCopy - All modern versions of Windows have this built in to the command line (except XP). This seems to be a replacement for xcopy.
  • ChoEazyCopy - Simple and powerful GUI to Microsoft RoboCopy tool (optional).
  • Registry Editor (select one)
    • RegCool - Free
    • RegEditX Pro - Extend Windows Registry Editor (REGEDIT). There is a 30 day evaluation copy available.
  • Profile Relocator - Profile Relocator is a step-based application that allows the re-locating of the Windows Users profile directory (optional).

1. Create a User Folder (optional)

I would recommend you create a user folder to hold your profiles (eg D:\Users) even if it is just for your one profile at the minute. This folder will have the exact same permissions as on the C: drive so you know the permissions are not going to cause any problems. It is possibly to put this folder anywhere but I prefer to use D:\Users\ as in this example.

Also read about changing the default profile locations before doing anything in this section as you might not want to do this step.

Method 1 - Manual

  • Create the folder D:\Users\
  • Manually duplicate the permissions from C:\Users\ to D:\Users\ folder by having both folder permissions windows open and then going through them one by one to make them the same.

Method 2 - RoboCopy / ChoEazyCopy

This method takes a little setting up and understanding but this method will do all of the heavy lifting for you whilst you know there wont be any mistakes. You can use either the RoboCopy command directly or you can use ChoEazyCopy whichs configures and uses RoboCopy via a GUI. Both methods do exactly the same thing.

RoboCopy Command

RoboCopy.exe "C:\" "D:\" *.* /E /LEV:2 /DCOPY:T /SEC /COPYALL /MT:8 /XF *.* /XD "C:\$RECYCLE.BIN" "C:\$SysReset" "C:\$Windows.~WS" "C:\Boot" "C:\Documents and Settings" "C:\MSOCache" "C:\PerfLogs" "C:\Program Files" "C:\Program files (x86)" "C:\ProgramData" "C:\Recovery" "C:\System Volume Information" "C:\VTRoot" "C:\Windows" "C:\Windows.old" /L
  1. Copy the rule above to a text editor and make sure you add any folder exclusions that you need to it. The folders that are configured cover most folders but do not forget to check hidden and system folders aswell.
  2. Remove the /L switch if you want to run this live (optional)
  3. Open a command prompt as Administrator
  4. Paste the modfied code in a command prompt and run

ChoEazyCopy Settings File

<ChoAppSettings>
  <MaxStatusMsgSize>1000</MaxStatusMsgSize>
  <SourceDirectory>C:\\</SourceDirectory>
  <DestDirectory>D:\\</DestDirectory>
  <RoboCopyFilePath>RoboCopy.exe</RoboCopyFilePath>
  <Files>*.*</Files>
  <CopyNoEmptySubDirectories>false</CopyNoEmptySubDirectories>
  <CopySubDirectories>true</CopySubDirectories>
  <OnlyCopyNLevels>2</OnlyCopyNLevels>
  <CopyFilesRestartableMode>false</CopyFilesRestartableMode>
  <CopyFilesBackupMode>false</CopyFilesBackupMode>
  <FallbackCopyFilesMode>false</FallbackCopyFilesMode>
  <UnbufferredIOCopy>false</UnbufferredIOCopy>
  <EncrptFileEFSRawMode>false</EncrptFileEFSRawMode>
  <CopyFlags />
  <CopyDirTimestamp>true</CopyDirTimestamp>
  <CopyFilesWithSecurity>true</CopyFilesWithSecurity>
  <CopyFilesWithFileInfo>true</CopyFilesWithFileInfo>
  <CopyFilesWithNoFileInfo>false</CopyFilesWithNoFileInfo>
  <FixFileSecurityOnFiles>false</FixFileSecurityOnFiles>
  <FixFileTimeOnFiles>false</FixFileTimeOnFiles>
  <DelDestFileDirIfNotExistsInSource>false</DelDestFileDirIfNotExistsInSource>
  <MirrorDirTree>false</MirrorDirTree>
  <MoveFiles>false</MoveFiles>
  <MoveFilesNDirs>false</MoveFilesNDirs>
  <AddFileAttributes />
  <RemoveFileAttributes />
  <CreateDirTree>false</CreateDirTree>
  <CreateFATFileNames>false</CreateFATFileNames>
  <TurnOffLongPath>false</TurnOffLongPath>
  <RunAgainWithNoChangesSeen>0</RunAgainWithNoChangesSeen>
  <RunAgainWithChangesSeenInMin>0</RunAgainWithChangesSeenInMin>
  <RunHourStartTimeTicks>0</RunHourStartTimeTicks>
  <RunHourEndTimeTicks>0</RunHourEndTimeTicks>
  <CheckRunHourPerFileBasis>false</CheckRunHourPerFileBasis>
  <InterPacketGapInMS>0</InterPacketGapInMS>
  <CopySymbolicLinks>false</CopySymbolicLinks>
  <MultithreadCopy>8</MultithreadCopy>
  <CopyNODirInfo>false</CopyNODirInfo>
  <CopyWithoutWindowsCopyOffload>false</CopyWithoutWindowsCopyOffload>
  <CopyOnlyFilesWithArchiveAttributes>false</CopyOnlyFilesWithArchiveAttributes>
  <CopyOnlyFilesWithArchiveAttributesAndReset>false</CopyOnlyFilesWithArchiveAttributesAndReset>
  <ExcludeFilesWithGivenNames>*.*</ExcludeFilesWithGivenNames>
  <ExcludeDirsWithGivenNames>"C:\$RECYCLE.BIN";"C:\$SysReset";"C:\$Windows.~WS";"C:\Boot";"C:\Documents and Settings";"C:\MSOCache";"C:\PerfLogs";"C:\Program Files";"C:\Program files (x86)";"C:\ProgramData";"C:\Recovery";"C:\System Volume Information";"C:\VTRoot";"C:\Windows";"C:\Windows.old";</ExcludeDirsWithGivenNames>
  <ExcludeChangedFiles>false</ExcludeChangedFiles>
  <ExcludeNewerFiles>false</ExcludeNewerFiles>
  <ExcludeOlderFiles>false</ExcludeOlderFiles>
  <ExcludeExtraFilesAndDirs>false</ExcludeExtraFilesAndDirs>
  <ExcludeLonelyFilesAndDirs>false</ExcludeLonelyFilesAndDirs>
  <IncludeSameFiles>false</IncludeSameFiles>
  <IncludeTweakedFiles>false</IncludeTweakedFiles>
  <ExcludeFilesBiggerThanNBytes>0</ExcludeFilesBiggerThanNBytes>
  <ExcludeFilesSmallerThanNBytes>0</ExcludeFilesSmallerThanNBytes>
  <ExcludeFilesOlderThanNDays>0</ExcludeFilesOlderThanNDays>
  <ExcludeFilesNewerThanNDays>0</ExcludeFilesNewerThanNDays>
  <ExcludeFilesUnusedSinceNDays>0</ExcludeFilesUnusedSinceNDays>
  <ExcludeFilesUsedSinceNDays>0</ExcludeFilesUsedSinceNDays>
  <ExcludeJunctionPoints>false</ExcludeJunctionPoints>
  <AssumeFATFileTimes>false</AssumeFATFileTimes>
  <CompensateOneHourDSTTimeDiff>false</CompensateOneHourDSTTimeDiff>
  <ExcludeJunctionPointsForDirs>false</ExcludeJunctionPointsForDirs>
  <ExcludeJunctionPointsForFiles>false</ExcludeJunctionPointsForFiles>
  <NoOfRetries>0</NoOfRetries>
  <WaitTimeBetweenRetries>0</WaitTimeBetweenRetries>
  <SaveRetrySettingsToRegistry>false</SaveRetrySettingsToRegistry>
  <WaitForSharenames>false</WaitForSharenames>
  <ListOnly>true</ListOnly>
  <ReportExtraFiles>false</ReportExtraFiles>
  <VerboseOutput>false</VerboseOutput>
  <IncludeSourceFileTimestamp>false</IncludeSourceFileTimestamp>
  <IncludeFullPathName>false</IncludeFullPathName>
  <PrintByteSizes>false</PrintByteSizes>
  <NoFileSizeLog>false</NoFileSizeLog>
  <NoFileClassLog>false</NoFileClassLog>
  <NoFileNameLog>false</NoFileNameLog>
  <NoDirListLog>false</NoDirListLog>
  <NoProgress>false</NoProgress>
  <ShowEstTimeOfArrival>false</ShowEstTimeOfArrival>
  <NoJobHeader>false</NoJobHeader>
  <NoJobSummary>false</NoJobSummary>
</ChoAppSettings>

NB: C:\\ (source) and D:\\ (target) it is intentional to have 2 trailing slashes and is a workaround for a bug when using root folders in ChoEazyCopy. This bug has been reported but only applies to ChoEazyCopy but not when using RoboCopy directly.

  1. Install ChoEazyCopy
  2. Create a new file called copy-user-folder.ezy
  3. Copy and paste the code above into it and save
  4. Run ChoEazyCopy as an administrator
  5. Open copy-user-folder.ezy with ChoEazyCopy 
  6. Add any folder exclusions that you need to it. The ones that are present cover most folders but do not forget to check hidden and system folders aswell.
  7. Remove the /L (ListOnly) switch if you want to run this live (optional)
  8. Save any changes.
  9. Run the command by clicking the play arrow at the top.

Switches Explained

  • "C:\" (Source) - Files/Folders Source
  • "D:\" (Target) - Files/Folders Target
  • *.* (Files) - Which files to select. We have to put something in here so i use *.*
  • /DCOPY:T (CopyDirTimestamp) - Preserve folder timestamps
  • /COPYALL (CopyFilesWithFileInfo) - Copy files with their attributes
  • /SEC (CopyFilesWith Security) - Keeps file ACL permissions as they are in the source
  • /E (CopySubDirectories) - Copy all sub directories including empty ones
  • /MT:8 (MultithreadCopy) - Do multi-threaded copies with n threads. Makes copying quicker.
  • /LEV:2 (OnlyCopyNLevels) - Only copy folders to 1 level below (i.e. C:\Users)
  • /XD (ExcludeDirsWithGivenNames) - Exclude all folders except C:\Users. With RoboCopy you select all and then exclude what you dont want.
  • /XF *.* (ExcludeFilesWithGivenName) - *.* excludes all files because we only want the C:\Users folder.
  • /L (ListOnly) - This switch is a test switch which prevents copying, timestamp changes or deleting of any files and is present to prevent accedentally running this command with setting things up properly. Remove this when you want to perform this command for real.

2. Change Default location for User Profiles (optional)

This can easily be done with a piece of software called Profile Relocator. This is ideally used when you first setup a new PC before you create any profiles (except the one you were required to do to set windows up which you can delete later), however you can still use this on a live PC.

Profile relocator does not move exisiting profiles.

Instructions

  1. Login to an Administrator account
  2. Install Profile Relocator 
  3. Run the software and follow the onscreen instructions.

This is what it does according to the readme:

  1. If the user has explicitly enabled the option, PR will copy the Public and Default folders from the old location - which varies depending on the version of the operating system - to the new location. The original folders aren't modified in any way.
  2. PR updates the following registry keys to reflect the new location the user chose:
    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\ProfilesDirectory
    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\Public
    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\Default
  3. To allow the process to be reverted back to its previous state, PR will then create - or update if it already exists - the following registry key with the location of the profiles directory it found when it PR was started:
    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\!ProfileRelocator-Original

Notes

  • You can make these changes manually in the registry so do not need this software for that but it makes things easier.
  • You get the option as to whether you want to copy the Public and Default folders and use them in the new location.
  • I do not know how Profile Relocator copies the Public and Default folders and therefore how it maintains their permissions. I am guessing that it does.
  • How To | How To Move A User Profile To Another Drive or Partition In Windows - YouTube - This is just showing the same thing that Profile Relocator does but also shows that when you change the Users folder location in the registry to D:\Users then Windows will automatically create the D:\Users folder when you create a new account along with the D:\Public profile.

3. Copy User Profile to new location

This process will copy the selected profile to the new location with all of the ACL permission intact. In this example I am moving a single profile from C:\Users to D:\Users. This process will copy all profiles that you do not specify in one action so you do not have to repeat this for every profile if doing more than one.

You can use either the RoboCopy command directly or you can use ChoEazyCopy whichs configures and uses RoboCopy via a GUI. Both methods do exactly the same thing.

Notes

  • You cannot run these commands from within a profile that you are going to move. You must logout into another account that has administrator rights and that you are not going to move. You can create a temp administrator account for this.
  • Do not login to these profiles untill these instructions tell you that it is ok.
  • Disable your antivirus if you are moving folders with files in that might trigger it.
  • After a migration always check your error log
  • If find errors, you might find that running these in safemode gives a better result.
  • You cannot just use copy and paste because the ACL permissions and other things are not preserved.

RoboCopy Command

RoboCopy.exe "C:\Users" "D:\Users" *.* /E /ZB /DCOPY:T /SEC /COPYALL /SL /MT:8 /XD "C:\Users\All Users" "C:\Users\Default" "C:\Users\Default User" "C:\Users\Default.migrated" "C:\Users\DefaultAppPool" "C:\Users\LogMeInRemoteUser" "C:\Users\Public" "C:\Users\UpdatusUser" /R:1 /W:1 /UNILOG:"C:\profile-copy.log" /L
  1. Copy the rule above to a text editor and make sure you add any User Profile folders to the folder exclusion list that you do not want to copy. The list that is in the example code above covers most default/system folders present but do not forget to check for other hidden and system folders aswell.
  2. Remove the /L switch if you want to run this live (optional)
  3. Open a command prompt as Administrator
  4. Paste the modfied code in a command prompt and run

ChoEazyCopy Settings File

<ChoAppSettings>
  <MaxStatusMsgSize>1000</MaxStatusMsgSize>
  <SourceDirectory>C:\Users</SourceDirectory>
  <DestDirectory>D:\Users</DestDirectory>
  <RoboCopyFilePath>RoboCopy.exe</RoboCopyFilePath>
  <Files>*.*</Files>
  <CopyNoEmptySubDirectories>false</CopyNoEmptySubDirectories>
  <CopySubDirectories>true</CopySubDirectories>
  <OnlyCopyNLevels>0</OnlyCopyNLevels>
  <CopyFilesRestartableMode>false</CopyFilesRestartableMode>
  <CopyFilesBackupMode>false</CopyFilesBackupMode>
  <FallbackCopyFilesMode>true</FallbackCopyFilesMode>
  <UnbufferredIOCopy>false</UnbufferredIOCopy>
  <EncrptFileEFSRawMode>false</EncrptFileEFSRawMode>
  <CopyFlags />
  <CopyDirTimestamp>true</CopyDirTimestamp>
  <CopyFilesWithSecurity>true</CopyFilesWithSecurity>
  <CopyFilesWithFileInfo>true</CopyFilesWithFileInfo>
  <CopyFilesWithNoFileInfo>false</CopyFilesWithNoFileInfo>
  <FixFileSecurityOnFiles>false</FixFileSecurityOnFiles>
  <FixFileTimeOnFiles>false</FixFileTimeOnFiles>
  <DelDestFileDirIfNotExistsInSource>false</DelDestFileDirIfNotExistsInSource>
  <MirrorDirTree>false</MirrorDirTree>
  <MoveFiles>false</MoveFiles>
  <MoveFilesNDirs>false</MoveFilesNDirs>
  <AddFileAttributes />
  <RemoveFileAttributes />
  <CreateDirTree>false</CreateDirTree>
  <CreateFATFileNames>false</CreateFATFileNames>
  <TurnOffLongPath>false</TurnOffLongPath>
  <RunAgainWithNoChangesSeen>0</RunAgainWithNoChangesSeen>
  <RunAgainWithChangesSeenInMin>0</RunAgainWithChangesSeenInMin>
  <RunHourStartTimeTicks>0</RunHourStartTimeTicks>
  <RunHourEndTimeTicks>0</RunHourEndTimeTicks>
  <CheckRunHourPerFileBasis>false</CheckRunHourPerFileBasis>
  <InterPacketGapInMS>0</InterPacketGapInMS>
  <CopySymbolicLinks>true</CopySymbolicLinks>
  <MultithreadCopy>8</MultithreadCopy>
  <CopyNODirInfo>false</CopyNODirInfo>
  <CopyWithoutWindowsCopyOffload>false</CopyWithoutWindowsCopyOffload>
  <CopyOnlyFilesWithArchiveAttributes>false</CopyOnlyFilesWithArchiveAttributes>
  <CopyOnlyFilesWithArchiveAttributesAndReset>false</CopyOnlyFilesWithArchiveAttributesAndReset>
  <ExcludeFilesWithGivenNames />
  <ExcludeDirsWithGivenNames>"C:\Users\All Users";"C:\Users\Default";"C:\Users\Default User";"C:\Users\Default.migrated";"C:\Users\DefaultAppPool";"C:\Users\LogMeInRemoteUser";"C:\Users\Public";"C:\Users\UpdatusUser";</ExcludeDirsWithGivenNames>
  <ExcludeChangedFiles>false</ExcludeChangedFiles>
  <ExcludeNewerFiles>false</ExcludeNewerFiles>
  <ExcludeOlderFiles>false</ExcludeOlderFiles>
  <ExcludeExtraFilesAndDirs>false</ExcludeExtraFilesAndDirs>
  <ExcludeLonelyFilesAndDirs>false</ExcludeLonelyFilesAndDirs>
  <IncludeSameFiles>false</IncludeSameFiles>
  <IncludeTweakedFiles>false</IncludeTweakedFiles>
  <ExcludeFilesBiggerThanNBytes>0</ExcludeFilesBiggerThanNBytes>
  <ExcludeFilesSmallerThanNBytes>0</ExcludeFilesSmallerThanNBytes>
  <ExcludeFilesOlderThanNDays>0</ExcludeFilesOlderThanNDays>
  <ExcludeFilesNewerThanNDays>0</ExcludeFilesNewerThanNDays>
  <ExcludeFilesUnusedSinceNDays>0</ExcludeFilesUnusedSinceNDays>
  <ExcludeFilesUsedSinceNDays>0</ExcludeFilesUsedSinceNDays>
  <ExcludeJunctionPoints>false</ExcludeJunctionPoints>
  <AssumeFATFileTimes>false</AssumeFATFileTimes>
  <CompensateOneHourDSTTimeDiff>false</CompensateOneHourDSTTimeDiff>
  <ExcludeJunctionPointsForDirs>false</ExcludeJunctionPointsForDirs>
  <ExcludeJunctionPointsForFiles>false</ExcludeJunctionPointsForFiles>
  <NoOfRetries>1</NoOfRetries>
  <WaitTimeBetweenRetries>1</WaitTimeBetweenRetries>
  <SaveRetrySettingsToRegistry>false</SaveRetrySettingsToRegistry>
  <WaitForSharenames>false</WaitForSharenames>
  <ListOnly>true</ListOnly>
  <ReportExtraFiles>false</ReportExtraFiles>
  <VerboseOutput>false</VerboseOutput>
  <IncludeSourceFileTimestamp>false</IncludeSourceFileTimestamp>
  <IncludeFullPathName>false</IncludeFullPathName>
  <PrintByteSizes>false</PrintByteSizes>
  <NoFileSizeLog>false</NoFileSizeLog>
  <NoFileClassLog>false</NoFileClassLog>
  <NoFileNameLog>false</NoFileNameLog>
  <NoDirListLog>false</NoDirListLog>
  <NoProgress>false</NoProgress>
  <ShowEstTimeOfArrival>false</ShowEstTimeOfArrival>
  <UnicodeOutputLogFilePath>C:\profile-copy.log</UnicodeOutputLogFilePath>
  <NoJobHeader>false</NoJobHeader>
  <NoJobSummary>false</NoJobSummary>
</ChoAppSettings>
  1. Install ChoEazyCopy
  2. Create a new file called copy-user-profile.ezy
  3. Copy and paste the code above into it and save
  4. Run ChoEazyCopy as an administrator
  5. Open copy-user-profile.ezy with ChoEazyCopy 
  6. Add any User Profile folders to the folder exclusion list that you do not want to copy. The list that is in the example code above covers most default/system folders present but do not forget to check for other hidden and system folders aswell.
  7. Remove the /L (ListOnly) switch if you want to run this live (optional)
  8. Save any changes.
  9. Run the command by clicking the play arrow at the top.

Switches Explained

  • "C:\Users" (Source) - Files/Folders Source
  • "D:\Users" (Target) - Files/Folders Target
  • *.* (Files) - Which files to select. Select all files
  • /DCOPY:T (CopyDirTimestamp) - Preserve folder timestamps
  • /COPYALL (CopyFilesWithFileInfo) - Copy files with their attributes
  • /SEC (CopyFilesWith Security) - Keeps file ACL permissions as they are in the source
  • /E (CopySubDirectories) - Copy all sub directories including empty ones
  • /SL (CopySymbolicLinks) - Copy symbolicLinks versus the target. Not sure this does anything didnt harm my profile when I moved it.
  • /ZB (FallbackCopyFilesMode) - I think this is volume shadow copy and is used when a file is locked and a 'Access is Denied' error is returned.
  • /MT:8 (MultithreadCopy) - Do multi-threaded copies with n threads. Makes copying quicker.
  • /LEV:2 (OnlyCopyNLevels) - Only copy folders to 1 level below (i.e. C:\Users)
  • /XD (ExcludeDirsWithGivenNames) - Exclude all folders in C:\Users except the profile(s) that you want to move. With RoboCopy you select all and then exclude what you dont want.
  • UNILOG:"C:\profile-copy.log" (UnicodeOutputLogFilePath) - If you dont use this Eazy Copy will crash.
  • /R:1 (NoOfRetries) - As default the retry limit is 1 Million which is daft so this switch will limit it to 1. In Eazy Copy if you set this to zero the switch does not get added.
  • /W:1 (WaitTimeBtweenRetries) - Default time is 30 seconds which is far to long so this sets it to 1 second. In Eazy Copy if you set this to zero the switch does not get added.
  • /L (ListOnly) - This switch is a test switch which prevents copying, timestamp changes or deleting of any files and is present to prevent accedentally running this command with setting things up properly. Remove this when you want to perform this command for real.

4. Change the Registry to reflect the Profile's new location

Once the profile has been moved the registry needs some changes making to it so things work properly. This needs to be done for each profile moved.

Step 1 - Change Profile Image Path

  1. You should be logged in with the temporary Administrator account
  2. Create a System Restore Point (optional)
  3. Open Regedit as an Administrator
  4. Change the Profile Image Path from C:\Users\{username} to D:\Users\{username} in the registry key below. Each profile with have a slightly different parent folder in the registry for obvious reasons. It will not look exactly like it does below.
    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\S-1-5-xx-xxxxxxxxxx-xxxxxxxxxx-xxxx\ProfileImagePath
  5. Change the profile state from 0 to 1 in the registry key below. The base type should stay as Hexidecimal. I do not know why you need to do this but this YouTube video tells you to.
    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\S-1-5-xx-xxxxxxxxxx-xxxxxxxxxx-xxxx\State 
  6. Rename the orginal profile folders i.e. C:\Users\{username} to C:\Users\{username}.bak. This prevents accidental use and that only the new profile will be used. You can delete it at a later date as it should no longer be needed or used.

Once you have done all of the above for each of the moved profiles, reboot the computer.

Step 2 - Change the static references in the registry

We need to change all references of C:\Users\{username} to D:\Users\{username}  - this is also a good reason for keeping the same folder format but on the D: drive as it is slightly easier to change the locations in the registry.

For this we will use a Registry editor that will allow us to do a text search and replace within the registry. Install this via your temporary administrator account.

This procedure needs to be done for each profile.

  1. Log into the moved profile
  2. Create a System Restore Point (optional)
  3. Pick Your REG software
    • RegCool
      1. Open RegCool as an Administrator
      2. Search the registry for C:\Users\{username} in Values, Data and all HKEY hives and I did NOT match case.
      3. In the results window at the bottom select all of the results
      4. right click on the highlighted results and click replace
      5. You should now replace C:\Users\{username} with D:\Users\{username}
        • Make sure you double check the strings are correct as this cannot be undone
      6. Click start/replace
        • When I did this I found some registry keys would cause the software to crash. In this case just start the software again, do the same search but instead of selecting the whole block of results, select half and keep going until the are all done.
        • Some keys will not change or if they do they just change back again. they must be protected somehow. But it does not harm to leave them.
        • These are the keys I had issue with:
          • [HKEY_LOCAL_MACHINE\SOFTWARE\4Developers\RCrawler\History]
          • [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Exclusions\Paths]
          • [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache]
    •  RegEditX Pro
      1. Open RegEditX Pro as an Administrator
      2. In the menu at the top select (RegEditX-->RegEditX Crawler)
      3. Search the registry for C:\Users\{username} in Values, Data and all HKEY hives and I did NOT match case.
      4. Highlight all of the results
      5. On the right click Replace
      6. You should now replace C:\Users\{username} with D:\Users\{username}
        • Make sure you double check the strings are correct as this cannot be undone
        • Do NOT confirm every replacement
      7. Click Start
        • The program will appear to crash or lockup. It is still working. I think this is bug.
  4. Logout

NB: Some entries in the registry have the format C:\Users\USERNAM~1\ (old file format) you might want to change these but I suspect that this is fromm old buggy software I no longer have 

Once you have done the process above for each moved account then you should reboot the computer.

5. Housekeeping

Now you have moved your profile you might need to do some of the follwoing to keep you computer running correctly

  • Update AV exclusions in both your choosen AV and Windows Defender

6. Thats it Folks

All the changes have been made and hopefully you now have moved your profiles.


Known Issues

After I have finished moving my profile I noticed a couple of issues which might not always occur. These are easy enough to fix.

  • Library Folders dont work - This could just be my PC but to fix this you should delete all of the libraies (files will be untouchjed) and then click recreate default
  • Quick Access links might be come faulty - Delete/Unpin them and then re-add as required.
  • Outlook PST references become broken causing error 0x8004010F. See my solution.
  • ClassicShell menu layout is lost - If you have customised your start menu using classicshell and have spent ages arranging your menu, the arrangement will probably be lost. There might be a way to preserve this before moving profiles.
  • Moving profiles to a non standard location can cause upgrade issues? - This might not be the case anymore in Windows 10 and might only have been an issue on older versions of windows because the profiles were moved wrong. Anything using Windows 8 is flaky and I think this is where most of the issues were caused by this.

There could be some other minor issues that occur because of the change of folder and file locations but should just be a case of changing settings in the various softwares.

Links

General

Registry Software

  • RegEditX Pro - Extend Windows Registry Editor (REGEDIT). There is a 30 day evaluation copy available.
  • Registry Replacer | CNET Download.com - Registry Replacer is a search-and-replace utility for the Windows Registry. It lets you search the contents of keys and key names for strings and replace them.

Microsoft User State Migration Tool (USMT) Software

  • USMT GUI - Gui for MS User State Migration - This looks like a very comprehensive GUI for USMT. i.e. "Its a simple three-step procedure to backup a user profile and to restore the data and settings to another user profile /other AD"
  • Migrate-WindowsUserProfile - Migrate Windows user profile to a new machine using Microsoft USMT with a PowerShell GUI.

Microsoft User State Migration Tool (USMT)

3rd Party Transfer Software

RoboCopy GUI Software

RoboCopy

Xcopy

Symbolic Links

SysPrep

  • Move Users Folder Location in Windows 10 Installation & Upgrade Tutorials - A very indepth tutorial with videos on how to use Sysprep to move User profiles. The method described in this tutorial allows relocating Windows 10 main profile folder Users including all present and future user profiles and folders while installing Windows, before any user accounts are created, as well as later on an already installed system.

Managing Libraries

Quick Links

NTFS Cut and Copy Permissions behaviour

NTFS Extended Attributes

Published in Windows General
Friday, 15 December 2017 14:03

My EasyBlog 5 Notes

These are for those fiddly settings you can never find.

Settings

cron jobs

You need to setup a cron job for both EasyBlog and Komento because

  • Emails are sent out via 'Send E-mails During Page Load' mechanism. This is slow and can cause issues with high traffic sites.
  • This will move the email handling away from the normal running of the website and will not suffer timeouts or other issues related to emails.
  • EasyBlog has a feature where it can autopost emails as articles from a defined mailbox. This feature will not work without a cron setup.
  • The crons can handle a lot more emails than the page load method.
  • Stackideas - In short, sending e-mails is a long process and it requires your server to communicate with the recipient's e-mail server. Sending one e-mail is perfectly fine but imagine sending it to 500 recipients because you have 500 subscribers. Two main issues for not utilizing cronjobs:
    1. The only way to dispatch e-mails is when someone accesses the component area (either EasyBlog or Komento). Imagine having 5000 pending e-mails and you do not have the sufficient traffic to these pages. Those e-mails would stuck in the queue.
    2. Even if you have sufficient traffic, it would cause delays when anyone accesses these pages because your mail server would need to communicate to the recipient's mail server.

Send E-mails During Page Load Location

Use this information to turn the feature off, if not already. This also where you can setup other notification options.

  • EasyBlog (Settings-->Notifications-->General-->General Settings-->Send E-mails During Page Load) = off
  • Komento (Settings-->Notifications-->General-->General-->Send E-mails On Page Load) = off

Official Documentation

Notification of the requirement to use cron

Currently the only notification that you need a cron job is if you visit the following pages. they also have a link to the official documentation for setting up a cron job.

  • EasyBlog (Mail Activities-->Mail Activities)
  • Komento (E-mails-->Email Activities)

Shared Hosts

remember that on shared hosts you will have limits on your email send and receive volume and the frequency that your cron can run.

These are a typical example of limitations on a well run server.

  • cron
    • Any client who schedules cron jobs in such a manner that jobs take more then half the time to complete before the next scheduled iteration, and more frequently then 10 minutes is abusing the cron system.
    • Any automated processes that excessively consume resources and impact server stability may be disabled at our discretion by our technicians.
  • Maximum email rate
    • The maximum allowed email send rate is 350 messages per hour per domain (cPanel is irrelevant). Please keep in mind that each recipient counts as a separate message as it is being sent to a separate address. This should be the only limitation in place as far as outgoing messages.

Setup your cron to run every 10 minutes with a 50 emails max send. You could push it to 100 emails max send.

Toolbar

Disable Blog Header Title and Header  Description

The settings to disable these are at

  • (Settings-->Layout-->Toolbar-->General)
    • Enable Headers Above Toolbar – set to no - This disables the global title at the top of easyblog (optional)
    • Enable Headers Description Above Toolbar – set to no – This disables the global description at the top of easy blog (optional)
  • (Settings-->Layout-->Toolbar-->Toolbar)
    • Display Tags Link = off
    • Display Bloggers Link = off
    • Display Teamblog Link = off
    • Enable Archives Link = off

Enable Automatic Approval of Posts

  • (ACL-->Author 'Group'-->Compose-->Compose-->Allowed To Publish Post) =  Yes
  • Also you must add content-editor into the Author group (publisher will not inherit author settings for EasyBlog)

In EasyBlog user author settings

NB: EasyBlog retrieves the info from Joomla, not a separate database

  • (Authors-->{username}-->Details)
  • (Authors-->{username}-->Blog Settings)
    • Blog Permalink – set to this something sensible, not the account username

Change the a blog post to userX

Assuming EasyBlog Composer

  • (Posts-->Posts)
  • Edit the requires Blog Post
  • Edit the Author on the top right
  • Select the userX account
  • Update the post

Storage Paths

(Settings-->Media-->General-->Storage Paths)

I need to test my folder selection to see if it all works as expected.

Default:

  • Article Images                images/easyblog_articles/
  • User media                     images/easyblog_images/
  • Shared media                 images/easyblog_shared/
  • User avatars                    images/easyblog_avatar/
  • Category avatars            images/easyblog_cavatar/
  • Team avatars                  images/easyblog_tavatar/

Mine:

  • Article Images                images/blog/article-images/
  • User media                     images/blog/user-media/
  • Shared media                 images/blog/shared-media/
  • User avatars                    images/blog/user-avatars/
  • Category avatars            images/blog/category-avatars/
  • Team avatars                   images/blog/team-avatars/

This is much neater as all of the blog media is within one folder. I have many application installed in my Joomla website.

Themes

If you are using EasyBlog and Komento it is important to match the themes.

I like the following EasyBlog themes:

  • bubbles
  • x origami
  • plain
  • timeless
  • wireframe

Kometo also has these themes:

  • bubbles
  • Wireframe

 

Questions and Answers

If easy blog has its own built in commenting system why do i need Komento ?
EasyBlog had its own commenting system, integrating with komento gives you more features given in the default easyblog comment.

  1. Instantly activate user interaction and get feedback from visitors to your site.
  2. Professionally control all incoming comments or spam in one easy centralized system.
  3. Migrate comments from EasyBlog and other comment extensions and have them display in Komento.
  4. Komento handles comments in K2, EasySocial, JomSocial, FlexiContent, ZOO, EasyBlog 3.5, VirtueMart, redSHOP, and more.
  5. Control certain activity that a particular user or user group can do in the comments area.
    You could read more about it here --> Komento, by stackideas - Joomla Extension Directory

Do i need to use the inbuilt media manager?
You do not need to use media manager to upload your pictures, using your editor would work.

What are the benefits of using the inbuilt media manager?
The build in manager makes it easy for you to upload picture, it also automatically create thumbnails and full view and will come in handy when using lightbox. It also has additional features like pictures that you could share with others using the shared folder.

Can you recommend which comment system to use? i do not know if disqus is better because it is cloud based ?
You might need to check your requirements and what you will need for your blogs.

Why does Easyblog not use the Joomla template?
EasyBlog had themes which you could choose to better suite your site. We also have partners with template developer that supports easyblog
Link --> http://stackideas.com/partners

Will ever use the joomla template?
As for the Joomla template, the default theme that is included in EasyBlog was created to inherit most of the styling of your Joomla template but some of the elements are designed internally. For instance, the toolbar in EasyBlog, we have to design this on our own because there's no other Joomla template that is designing the toolbar :)

You can read this documentation link and see is it helpful for you? -> Template Overriding - Customizations - EasyBlog Documentation

Does Easyblog allows the use of joomla plugins
EasyBlog does trigger content plugins but whether or not it works with EasyBlog is another matter because some of these content plugins are explicitly configured to work with Joomla articles. We can't really tell you which plugin works and which plugin doesn't but if I recall correctly, allvideos plugin does work but EasyBlog has a built in video embed tool so not too sure if Allvideos is really necessary?

Where does the number come from of the folder my uploaded images are put it?
The number comes from the User ID

When i upload an image using your image manager, the manager uploads the image and puts it in a folder of that user, ie /easyblog_images/623/ is there anyway of turning this off because running a blog i do not want images all over the place. i want them like /images/blog/2014/09 etc.. no user number
There is also a shared folder in EasyBlog where they are stored in a shared folder . The shared folder does not categorize images into user id folders. However do take note that storing them in a shared folder also means that all authors on your site will be able to access them.

When inserting an image using your manager it uses an absolute image link ie http://www.mywebsite.com/images/easyblog_images/mypicture.jpg this is really bad, lets say i was developing on my test server and then moved it, none of the image links would then work. please can you tell me if you can turn this off as i do not understand why anyone would have this option on anyway.
The URL that is inserted into the blog post is actually dependent on your editor's configuration. If the editor that you are currently using is configured to use relative URLs, the url of the image will be relative because these WYSIWYG editors would format the urls accordingly.

This is only seems to work with JCE Editor. Does not work with None/TinyMCE/JCK


 

Other Notes

Published in Blogging
Page 11 of 95