We consider the problem of transmission over an unknown time-varying Gaussian channel, whose signal-to-noise ratio (SNR) is constant within a block but varies arbitrarily between blocks. For this scenario, we develop efficient automatic repeat request (ARQ) protocols in the form of low-complexity rateless codes, which encode a message into a sequence of incremental redundancy blocks. Following the receipt of each redundancy block, the receiver feeds back to the transmitter the SNR experienced by that block, which the encoder makes use of in structuring subsequent blocks. The resulting architecture, which involves layered repetition encoding and successive cancellation decoding, is capacity-achieving, enabling the message to be recovered with the minimum possible number of blocks for the realized channel.