1. Melt the butter in a small saucepan over medium-low heat, swirling occasionally. Stir in the ginger, allspice, fenugreek, oregano, turmeric, cardamom, garlic and onions, and bring to a simmer. Simmer until the butter is clear and the milk solids remain on the bottom of the pan, about 30 minutes. Reduce the heat to low if the butter is boiling too quickly--if it burns it will taste bitter.
2. Line a strainer with dampened cheesecloth. Skim the foam from the top of the butter and discard. Ladle the butter through the strainer, leaving behind the milk solids on the bottom of the pan. Use immediately, or cool and then refrigerate in a covered container until ready to use.