How to prioritize bitcoin transactions when solo mining using CPUMINER? I am just tinkering. Trying to learn how things work. So making money is not even on my radar at the moment.

Because I am just in the learning stage, I am using CPUMiner on my Ubuntu 17.10 laptop. It was easy to install and get it running against my bitcoin-qt install on the same machine.

So I am already running a full bitcoin node and the miner and it is doing work. I can see that things are moving around.

What I am really struggling to figure out is how blocks are created.

I read everywhere that the full node spits out the work to be done but the miner decides how to prioritize that work so most people work on the node with the largest fee first. That makes sense. But how is that being decided? Where are the rules configured to determine if I want to discard some transactions and process others?

For example, if I really don't care how much money I make and I simply want to process the oldest transactions first (maybe those that have a low fee) just to be helpful, how do I make that happen?

How do I tell either bitcoin-qt or cpuminer (minerd) what my preferences are for what to invest my efforts in?

With this system, there is no chance of making any money but if I can understand the process better and see how it works in the real world and how I can configure it, then I can decide how to scale up (or not).

Thanks!
For this task you do not go solo but using an agent in between called the 
Stratum

The node itself is supporting a custom script walletnotify which is executed whenever there is a new transaction found on the network. Then one could customise his stratum code to decide which tx actually to mine (per default they would sort them by the fees) or which ones to ignore.