I believe there's no perfect system, there are many factors to consider and someone is always unhappy lol. We tried a pure rotation system first but people were unhappy, it took too much time to get a pack as the guild kept growing.
The current system is based on both contribution and partecipation to be eligible for a pack. For example, partecipating 5 times and donating a minimum of 100 daily allows you to partecipate in the legendary pack rotation, partecipating less than 3 times excludes you from ever receiving anything. Sorry, I don't remember the details too well as i'm one of those that'll never receive a pack. ;P
It encourages partecipation and ensures that the top players get more packs, more often i guess :)