I have a question related to smart contract deployment and wallets. Since I am new to the Ethereum blockchain world, I want to get an insight on how it actually works and write down what a developer needs to do in order to deploy a smart contract on the ethereum blockchain.
So, I have written a simple smart contract on Remix IDE, then it was compiled, and now I want to deploy this to the Ethereum blockchain. Since I have MetaMask running on my browser, I can select on Remix IDE "Injected Web3" and this will automatically read my account and then I can deploy it. So, I understand that once I have MetaMask running, my account will be autopopulated in the account field, and then I can sign the transaction.
What I don't understand though, is in case of a desktop or mobile wallet, how should the developer sign the transaction of smart contract creation on the blockchain? (since there is no an automatically pop-up in the browser like MetaMask)