From Middle French honnir, from Old French honir, from Vulgar Latin *haunīre (“shame, dishonor”), from Frankish *haunijan (“humble, humiliate”) (whence also honte), from Proto-Germanic *haunijaną (“to make low, humble”), from Proto-Indo-European *kaw- (“to be evil, make evil”).
Cognate with Old High German hōnen (“to humble”), Middle Dutch honen (“to dishonour, debauch, corrupt”), Old English hīenan (“to humble, abase”), Gothic 𐌷𐌰𐌿𐌽𐌾𐌰𐌽 (haunjan, “to humiliate, abase”).