I have been thinking for years that as a society, we need 100-year products. It would be a global good to counteract the local incentives for producing perishable software.
However, over time I have realized that there are legitimately unforeseen circumstances that come up - for example, the general realization of the need for stricter security around logins (e.g. two-factor authentication). Maybe a 10 year time window is realistic for now.
In the meantime, requiring expiration days would go a long way towards calling out how perishable our devices and software are.