If I have
secp256k1 keypair that is widely known, like a Bitcoin address, can I convert that into a
Ed25519 key pair such that someone could access a .onion address in a deterministic way?
The bitcoin key could sign a message containing the onion address. There isn't any way to do this without the key holder producing a message.